[Mono-bugs] [Bug 396716] New: Verifier does not check for uninitialized `this` ( Partition III section 1.8.1.4)

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Tue Jun 3 10:03:22 EDT 2008


https://bugzilla.novell.com/show_bug.cgi?id=396716


           Summary: Verifier does not check for uninitialized `this`
                    (Partition III section 1.8.1.4)
           Product: Mono: Runtime
           Version: SVN
          Platform: x86
        OS/Version: Linux
            Status: NEW
          Severity: Normal
          Priority: P5 - None
         Component: misc
        AssignedTo: mono-bugs at lists.ximian.com
        ReportedBy: cedricv at neonux.com
         QAContact: mono-bugs at lists.ximian.com
          Found By: ---


The following IL will generate an error in peverify at IL_0001 of '.ctor'
(int32 x).
Mono's verifier currently does not issue an error for this.



assembly extern mscorlib
{
  .ver 2:0:0:0
  .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
}
assembly 'test'
{
  .hash algorithm 0x00008004
  .ver  0:0:0:0
}
module test // GUID = {845E91EF-3CFE-49BB-8F20-60C7B8F5653D}


  .class public auto ansi serializable beforefieldinit Test
        extends [mscorlib]System.Object
  {

    // method line 1
    .method public hidebysig  specialname  rtspecialname 
           instance default void '.ctor' ()  cil managed 
    {
        // Method begins at RVA 0x20ec
        // Code size 7 (0x7)
        .maxstack 8
        IL_0000:  ldarg.0 
        IL_0001:  call instance void object::'.ctor'()
        IL_0006:  ret 
    } // end of method Test::.ctor

    // method line 2
    .method public hidebysig  specialname  rtspecialname 
           instance default void '.ctor' (int32 x)  cil managed 
    {
        // Method begins at RVA 0x20f4
        // Code size 13 (0xd)
        .maxstack 8
        IL_0000:  ldarg.0 
        IL_0001:  callvirt instance void class Test::BeforeInitialized()
        IL_0006:  ldarg.0 
        IL_0007:  call instance void class Test::'.ctor'()
        IL_000c:  ret 
    } // end of method Test::.ctor

    // method line 3
    .method public hidebysig 
           instance default void BeforeInitialized ()  cil managed 
    {
        // Method begins at RVA 0x2104
        // Code size 11 (0xb)
        .maxstack 8
        IL_0000:  ldstr "before"
        IL_0005:  call void class [mscorlib]System.Console::WriteLine(string)
        IL_000a:  ret 
    } // end of method Test::BeforeInitialized

  } // end of class Test


-- 
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the mono-bugs mailing list