-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Umbrella] Refresh IL verification #22872
Comments
@VSadov posted a proposal for informal spec for ref return: dotnet/designs#17 |
@VSadov Note that ILVerify is currently only built for target framework |
ILVerify is now also targeting |
FYI: updated with the reference to another draft. Now for the "readonly references" rules. |
I went through the C# emit tests and classified the observable differences in behavior between ILVerify and PEVerify. Also updated the OP notes. I need to investigate some of them to confirm whether they are a Roslyn problem or an ILVerify problem (for instance, I suspect the one labelled "Mscorlib" may be a Roslyn issue). Also some issues are not high-priority (the one labelled "NoPIA"). The ones I'm pretty sure about: ILVerify doesn't support net modules (only supports assemblies), and it doesn't support TypedReference. I'll file bugs and then we can discuss which issues are more important. |
I have tried to order remaining unimplemented error IDs from https://github.com/dotnet/corert/blob/master/src/ILVerify/src/VerifierError.cs I do not have a lot of insight if some are easier to implement than others within existing infrastructure. I just looked at possibility to see particular violations as a result of some compiler bug. I have listed "interesting" errors here: https://github.com/dotnet/corert/issues/4958 |
Recent versions of the C# compiler produce unverifiable code (by current spec). All new compiler tests that hit this just disable the verification step, but we'd like to reverse the trend.
Below is a rough plan how we can be back to verifying the compiler output.
netcoreapp2.0
, but compiler emit tests targetnet46
)Tagging @VSadov @gafter and folks who have been contributing to ILVerify (with our thanks): @ArztSamuel @gregkalapos @mmayr-at @discostu105
The text was updated successfully, but these errors were encountered: