Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corert.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Strehovský <MichalStrehovsky@users.noreply.github.com>2017-07-01 04:38:31 +0300
committerGitHub <noreply@github.com>2017-07-01 04:38:31 +0300
commitdb7a7cb1c8acfb9c29a3e1e3400ac5394efefefb (patch)
treeab33e6c9a6e0ec680125865bc666fa7c9554287f /src/ILVerify
parent5a7b35a81a0e2faf2255f96e44d96e32fa375bec (diff)
Fix handling of bad IL in ILScanner (#4044)
While the scanner is not trying to be an IL validator, we should at least not crash. * Update IL importer to provide hooks for bad IL (this is mostly to prevent it from crashing with IndexOutOfRangeExceptions). * Remove exception throwing from the shared ILImporter (while we might want to throw most of the time, ILVerify probably doesn't want to). * Do not crash when trying to determine static bases of instance fields. * Fix constrained method handling.
Diffstat (limited to 'src/ILVerify')
-rw-r--r--src/ILVerify/src/ILImporter.Verify.cs15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/ILVerify/src/ILImporter.Verify.cs b/src/ILVerify/src/ILImporter.Verify.cs
index 806980e8f..fc732a8a2 100644
--- a/src/ILVerify/src/ILImporter.Verify.cs
+++ b/src/ILVerify/src/ILImporter.Verify.cs
@@ -1740,5 +1740,20 @@ namespace Internal.IL
{
throw new PlatformNotSupportedException("TypedReference not supported in .NET Core");
}
+
+ private void ReportInvalidBranchTarget(int targetOffset)
+ {
+ throw new NotImplementedException();
+ }
+
+ private void ReportFallthroughAtEndOfMethod()
+ {
+ throw new NotImplementedException();
+ }
+
+ private void ReportInvalidInstruction(ILOpcode opcode)
+ {
+ throw new NotImplementedException();
+ }
}
}