Has the CIL(Common Intermediate Language) changed for .Net 4.0?
I know that until 3.5, .Net uses the byte code defined in .Net 2.0.
I am wondering whether the new 4.0 byte code changes or not. Thanks!
As the latest ECMA standard file is still the 2006 one, I suspect the 4.0 does not change the byte code.
EDIT: I did a little search on the web and found that CIL are .Net bytecode are di开发者_Go百科fferent things. My understanding is that CIL to .Net bytecode is as asm to machine code. So my question still holds, does the CIL/Bytecode change?
Yes, the CLR has been changed:
From the .NET Framework Versions and Dependencies page:
.NET Framework version 4: Includes a new version of the CLR, expanded base class libraries, and new features such as the Managed Extensibility Framework (MEF), dynamic language runtime (DLR), and code contracts.
Concerning changes to the CIL (MSIL), the closest I came is that there are no changes to the System.Reflection.Emit.OpCodes
class, which should describe all available opcodes. I verified this by comparing the 4.0 documentation version with the 3.5 documentation version.
Yes.Now there is CLR version 4.0.This is Latest version is 4.6.
Please refer to https://msdn.microsoft.com/en-us/library/8bs2ecf4(v=vs.110).aspx
精彩评论