Mono 4.0.1 Release Notes

Release date: 14 May 2015

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.

Bug Fixes

  • 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.