4.0.1 is the first maintenance release of the 4.0 series
- 1727: Fixed DateTime parsing of Xml strings.
- Fixed intrinsic signature checks to take into account the 'this' parameter
- Redesigned profiler buffer flushing and method reporting to provide correctly ordered events to consumers.
- Use the same dwarf<->hw register mapping on x86 for both LLVM and jitted code, the one used by LLVM is the official version.
- Fix decimal comparison by using signed char comparison of signs; Fix size of jmp instruction sequence
- Correctly disable seq points in wrappers on android.
- Improve Visual Basic build support
- Fix the initialization of the pid array in ves_icall_System_Diagnostics_Process_GetProcesses_internal ().
- Avoid calling task_for_pid on osx 10.5+ and ios.
- Improve error checking when setting up class vtable.
- 26998: Allow abstract base classes in lists
- 28209: Fix freeing invalid memory in CreateProcess () if the executable was not found.
- 28557: Transition from step over to step into when control leaves managed code.
- 28847: Disable deadce in the liveness2 pass as well when compiling for sdb.
- 28918: Mark SecurityDeclarations
- 29039: First specific culture returned by enumerator was not fully initialized.
- 29177: Check SP on thread suspend correctly.
- 29667: Remove inappropropriate use of Marshal.SizeOf.
Marcos Henrich, Marek Safar, Alexis Christoforides, Alex Rønne Petersen, Rolf Bjarne Kvinge, Ludovic Henry, João Matos, Sebastien Pouliot, Mark Probst, jaredpar.