[Mono-bugs] [Bug 76653][Wis] New - Compiler error: "Trying to emit a local from a different ILGenerator." when compiling nested delegates

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Wed Nov 9 07:39:18 EST 2005


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by ken-bugzilla at friislarsen.net.

http://bugzilla.ximian.com/show_bug.cgi?id=76653

--- shadow/76653	2005-11-09 07:39:18.000000000 -0500
+++ shadow/76653.tmp.6072	2005-11-09 07:39:18.000000000 -0500
@@ -0,0 +1,86 @@
+Bug#: 76653
+Product: Mono: Compilers
+Version: 1.1
+OS: 
+OS Details: Ubuntu Breezy with some packages from Dapper
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Wishlist
+Component: C#
+AssignedTo: rharinath at novell.com                            
+ReportedBy: ken-bugzilla at friislarsen.net               
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: Compiler error: "Trying to emit a local from a different ILGenerator." when compiling nested delegates
+
+Both mcs and gmcs throws an exception when compiling the attached program.
+
+The exception is:
+
+--
+Unhandled Exception: System.Exception: Trying to emit a local from a
+different ILGenerator.
+in <0x005e7> System.Reflection.Emit.ILGenerator:Emit (OpCode opcode,
+System.Reflection.Emit.LocalBuilder lbuilder)
+in <0x00067> Mono.CSharp.ScopeInfo:EmitScopeInstance
+(System.Reflection.Emit.ILGenerator ig)
+in <0x0005d> Mono.CSharp.CaptureContext:EmitMethodHostInstance
+(Mono.CSharp.EmitContext target, Mono.CSharp.AnonymousContainer am)
+in <0x0001f> Mono.CSharp.EmitContext:EmitMethodHostInstance
+(Mono.CSharp.EmitContext target, Mono.CSharp.AnonymousMethod am)
+in <0x0001c> Mono.CSharp.AnonymousDelegate+AnonymousInstance:Emit
+(Mono.CSharp.EmitContext ec)
+in <0x0005c> Mono.CSharp.DelegateCreation:Emit (Mono.CSharp.EmitContext ec)
+in <0x000c6> Mono.CSharp.AnonymousDelegate:Emit (Mono.CSharp.EmitContext ec)
+in <0x00227> Mono.CSharp.Argument:Emit (Mono.CSharp.EmitContext ec)
+in <0x00205> Mono.CSharp.Invocation:EmitArguments (Mono.CSharp.EmitContext
+ec, System.Reflection.MethodBase mb, System.Collections.ArrayList
+arguments, Boolean dup_args, Mono.CSharp.LocalTemporary this_arg)
+in <0x00021> Mono.CSharp.BinaryDelegate:Emit (Mono.CSharp.EmitContext ec)
+in <0x0009a> Mono.CSharp.FieldExpr:EmitAssign (Mono.CSharp.EmitContext ec,
+Mono.CSharp.Expression source, Boolean leave_copy, Boolean prepare_for_load)
+in <0x0017c> Mono.CSharp.Assign:Emit (Mono.CSharp.EmitContext ec, Boolean
+is_statement)
+in <0x0000f> Mono.CSharp.Assign:EmitStatement (Mono.CSharp.EmitContext ec)
+in <0x00011> Mono.CSharp.StatementExpression:DoEmit
+(Mono.CSharp.EmitContext ec)in <0x00024> Mono.CSharp.Statement:Emit
+(Mono.CSharp.EmitContext ec)
+in <0x000a8> Mono.CSharp.Block:DoEmit (Mono.CSharp.EmitContext ec)
+in <0x00254> Mono.CSharp.Block:Emit (Mono.CSharp.EmitContext ec)
+in <0x0001b> Mono.CSharp.EmitContext:EmitResolvedTopBlock
+(Mono.CSharp.ToplevelBlock block, Boolean unreachable)
+in <0x000a3> Mono.CSharp.AnonymousMethod:EmitMethod
+(Mono.CSharp.EmitContext ec)in <0x0001a> Mono.CSharp.AnonymousDelegate:Emit
+(Mono.CSharp.EmitContext ec)
+in <0x0003e> Mono.CSharp.LocalVariableReference:EmitAssign
+(Mono.CSharp.EmitContext ec, Mono.CSharp.Expression source, Boolean
+leave_copy, Boolean prepare_for_load)
+in <0x0017c> Mono.CSharp.Assign:Emit (Mono.CSharp.EmitContext ec, Boolean
+is_statement)
+in <0x0000f> Mono.CSharp.Assign:EmitStatement (Mono.CSharp.EmitContext ec)
+in <0x00011> Mono.CSharp.StatementExpression:DoEmit
+(Mono.CSharp.EmitContext ec)in <0x00024> Mono.CSharp.Statement:Emit
+(Mono.CSharp.EmitContext ec)
+in <0x000a8> Mono.CSharp.Block:DoEmit (Mono.CSharp.EmitContext ec)
+in <0x00254> Mono.CSharp.Block:Emit (Mono.CSharp.EmitContext ec)
+in <0x000a8> Mono.CSharp.Block:DoEmit (Mono.CSharp.EmitContext ec)
+in <0x00254> Mono.CSharp.Block:Emit (Mono.CSharp.EmitContext ec)
+in <0x0001b> Mono.CSharp.EmitContext:EmitResolvedTopBlock
+(Mono.CSharp.ToplevelBlock block, Boolean unreachable)
+in <0x00068> Mono.CSharp.EmitContext:EmitTopBlock (IMethodData md,
+Mono.CSharp.ToplevelBlock block, Mono.CSharp.InternalParameters ip)
+in <0x001f2> Mono.CSharp.MethodData:Emit (Mono.CSharp.TypeContainer
+container, Mono.CSharp.Attributable kind)
+in <0x00029> Mono.CSharp.Method:Emit ()
+in <0x0064d> Mono.CSharp.TypeContainer:EmitType ()
+in <0x00225> Mono.CSharp.RootContext:EmitCode ()
+in <0x00c63> Mono.CSharp.Driver:MainDriver (System.String[] args)
+in <0x0000f> Mono.CSharp.Driver:Main (System.String[] args)
+--
+
+mcs --version says: Mono C# compiler version 1.1.9.1
+
+But it comes from the package mono-mcs-1.1.9.2-1ubuntu1 in Ubuntu Dapper


More information about the mono-bugs mailing list