[Mono-bugs] [Bug 660255] New: A MethodBuilder has non-generic declaringType when invoked from a nested type method

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Fri Dec 17 12:51:58 EST 2010


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

https://bugzilla.novell.com/show_bug.cgi?id=660255#c0


           Summary: A MethodBuilder has non-generic declaringType when
                    invoked from a nested type method
    Classification: Mono
           Product: Mono: Compilers
           Version: 2.8.x
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Minor
          Priority: P5 - None
         Component: C#
        AssignedTo: msafar at novell.com
        ReportedBy: p.bludov at wi2geo.ru
         QAContact: mono-bugs at lists.ximian.com
          Found By: ---
           Blocker: ---


Steps to reproduce the problem:

using System;
using System.Linq.Expressions;

namespace MonoTest
{
    class A<TA>
    {
        class B<TB>
        {
            public static void foo()
            {
                Expression<Action> func = () => foo(); // Compiles fine without
this line
            }

            class C<TC>
            {
                static void bar()
                {
                    B<TC>.foo();
                }
            }
        }
    }

    class Program
    {
        static void Main()
        {
        }
    }
} 


Actual Results:
Internal compiler error at test.cs(17,45):: exception caught while emitting
MethodBuilder [C`1::bar]

Unhandled Exception: System.ArgumentException: method declaring type is not a
generic type definition
Parameter name: method
  at System.Reflection.Emit.TypeBuilder.GetMethod (System.Type type,
System.Reflection.MethodInfo method) [0x00000] in <filename unknown>:0 
  at Mono.CSharp.MethodSpec.GetMetaInfo () [0x00000] in <filename unknown>:0 
  at Mono.CSharp.EmitContext.Emit (OpCode opcode, Mono.CSharp.MethodSpec
method) [0x00000] in <filename unknown>:0 
  at Mono.CSharp.Invocation.EmitCall (Mono.CSharp.EmitContext ec,
Mono.CSharp.Expression instance_expr, Mono.CSharp.MethodSpec method,
Mono.CSharp.Arguments Arg

Additional Information:
Compiles fine without generics also.

-- 
Configure bugmail: https://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