http://bugzilla.novell.com/show_bug.cgi?id=617161
http://bugzilla.novell.com/show_bug.cgi?id=617161#c0 Summary: NRE in dynamic method with nullable types Classification: Mono Product: Mono: Runtime Version: SVN Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: JIT AssignedTo: [email protected] ReportedBy: [email protected] QAContact: [email protected] Found By: --- Blocker: --- The following test case have to be compiled with dmcs, as the bug is triggered by what the DLR emits. The SRE code in the test case is only to show what the DLR emits. Apparently it's the same IL that is emitted in the assembly, and in the dynamic method. When calling the code from the emitted assembly it works just fine, but the compiled dynamic method throws an NRE. Test case: -- using System; using System.Linq; using System.Linq.Expressions; using System.Reflection; using System.Reflection.Emit; public class Test { public static void Main () { var assembly = AppDomain.CurrentDomain.DefineDynamicAssembly (new AssemblyName ("repro"), AssemblyBuilderAccess.RunAndSave); var module = assembly.DefineDynamicModule ("repro.dll"); var type = module.DefineType ("Test", TypeAttributes.Public); var method = type.DefineMethod ("Method", MethodAttributes.Public | MethodAttributes.Static, typeof (Func<long?>), new Type[] {typeof (long?)}); var p = Expression.Parameter(typeof(long?), "p"); Expression<Func<Func<long?, long?>>> e4 = Expression.Lambda<Func<Func<long?, long?>>>( Expression.Lambda<Func<long?, long?>>( Expression.Not(p), new ParameterExpression[] { p }), Enumerable.Empty<ParameterExpression>()); e4.CompileToMethod (method); type.CreateType (); assembly.Save ("repro.dll"); Func<Func<long?, long?>> f4 = e4.Compile (); Console.WriteLine (object.Equals (f4 () (0), (long?) ~0)); } } -- -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
