[Mono-bugs] [Bug 509614] New: ilasm2 'irrecoverable syntax error' on monodis of F# dll
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Wed Jun 3 14:37:30 EDT 2009
http://bugzilla.novell.com/show_bug.cgi?id=509614
Summary: ilasm2 'irrecoverable syntax error' on monodis of F#
dll
Classification: Mono
Product: Mono: Compilers
Version: 2.4.x
Platform: x86
OS/Version: Linux
Status: NEW
Severity: Normal
Priority: P5 - None
Component: IL assembler
AssignedTo: jankit at novell.com
ReportedBy: pmarks at pacificbiosciences.com
QAContact: mono-bugs at lists.ximian.com
Found By: ---
The following IL causes an 'irrecoverable syntax error' in ilasm2. It was
generated by monodis applied to a simple F# dll generated with fsc 1.9.6.16.
The line: ".namespace <StartupCode$test>.$PacBio" causes the error.
assembly extern mscorlib
{
.ver 2:0:0:0
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
}
assembly extern FSharp.Core
{
.ver 1:9:6:16
.publickeytoken = (A1 90 89 B1 C7 4D 08 09 ) // .....M..
}
assembly 'test'
{
.custom instance void class
[FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::'.ctor'(int32,
int32, int32) = (
01 00 01 00 00 00 09 00 00 00 06 00 00 00 00 00 ) // ................
.hash algorithm 0x00008004
.ver 0:0:0:0
}
mresource public 'FSharpSignatureData.test'
{
}
mresource public 'FSharpOptimizationData.test'
{
}
module test.dll // GUID = {4A26BC0F-1988-BB94-A745-03830FBC264A}
namespace PacBio
{
.class public auto ansi abstract sealed beforefieldinit Test
extends [mscorlib]System.Object
{
.custom instance void class
[FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::'.ctor'(valuetype
[FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = (01 00 07 00 00 00
00 00 ) // ........
// method line 1
.method public static
default int32 f (int32 a) cil managed
{
// Method begins at RVA 0x2050
// Code size 4 (0x4)
.maxstack 4
IL_0000: ldarg.0
IL_0001: ldc.i4.5
IL_0002: add
IL_0003: ret
} // end of method Test::f
.class nested public auto ansi serializable beforefieldinit Blah
extends [mscorlib]System.Object
{
.custom instance void class
[FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::'.ctor'(valuetype
[FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = (01 00 03 00 00 00
00 00 ) // ........
.field assembly int32 a
// method line 2
.method public specialname rtspecialname
instance default void '.ctor' () cil managed
{
// Method begins at RVA 0x2060
// Code size 18 (0x12)
.maxstack 4
.locals init (
class PacBio.Test/Blah V_0)
IL_0000: ldarg.0
IL_0001: call instance void object::'.ctor'()
IL_0006: ldarg.0
IL_0007: pop
IL_0008: ldarg.0
IL_0009: stloc.0
IL_000a: ldloc.0
IL_000b: ldc.i4.5
IL_000c: stfld int32 PacBio.Test/Blah::a
IL_0011: ret
} // end of method Blah::.ctor
// method line 3
.method public
instance default int32 Method (int32 y) cil managed
{
// Method begins at RVA 0x2080
// Code size 8 (0x8)
.maxstack 4
IL_0000: ldarg.0
IL_0001: ldarg.1
IL_0002: call instance int32 class PacBio.Test/Blah::f(int32)
IL_0007: ret
} // end of method Blah::Method
// method line 4
.method assembly
instance default int32 f (int32 x) cil managed
{
.custom instance void class
[mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::'.ctor'()
= (01 00 00 00 ) // ....
// Method begins at RVA 0x2094
// Code size 9 (0x9)
.maxstack 4
IL_0000: ldarg.1
IL_0001: ldarg.0
IL_0002: ldfld int32 PacBio.Test/Blah::a
IL_0007: add
IL_0008: ret
} // end of method Blah::f
} // end of class Blah
} // end of class PacBio.Test
}
namespace <StartupCode$test>.$PacBio
{
.class private auto ansi abstract sealed beforefieldinit Test
extends [mscorlib]System.Object
{
.field assembly static int32 init@
.custom instance void class
[mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::'.ctor'(valuetype
[mscorlib]System.Diagnostics.DebuggerBrowsableState) = (01 00 00 00 00 00 00
00 ) // ........
.custom instance void class
[mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::'.ctor'()
= (01 00 00 00 ) // ....
.custom instance void class
[mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::'.ctor'() = (01 00
00 00 ) // ....
// method line 5
.method private static specialname rtspecialname
default void '.cctor' () cil managed
{
// Method begins at RVA 0x20ac
// Code size 8 (0x8)
.maxstack 3
IL_0000: ldc.i4.s 0x0a
IL_0002: call void class [mscorlib]System.Console::WriteLine(int32)
IL_0007: ret
} // end of method Test::.cctor
} // end of class <StartupCode$test>.$PacBio.Test
}
.class private auto ansi abstract sealed beforefieldinit
'<PrivateImplementationDetails$test>'
extends [mscorlib]System.Object
{
} // end of class <PrivateImplementationDetails$test>
--
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the mono-bugs
mailing list