[Mono-bugs] [Bug 481526] New: Action<ClassInProject>[][] not creatable
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Tue Mar 3 11:17:04 EST 2009
https://bugzilla.novell.com/show_bug.cgi?id=481526
Summary: Action<ClassInProject>[][] not creatable
Classification: Mono
Product: Mono: Compilers
Version: SVN
Platform: x86-64
OS/Version: Linux
Status: NEW
Severity: Normal
Priority: P5 - None
Component: C#
AssignedTo: mono-bugs at lists.ximian.com
ReportedBy: Dax at daxxfiles.net
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Description of Problem:
gmcs can no longer create arrays of arrays of delegates using a class defined
inside the array-declaring project as a generic parameter.
Steps to reproduce the problem:
Compile
class MainClass
{
static void Foo(params Action<MainClass>[][] funcs){}
static Action<MainClass>[] Set(params Action<MainClass>[] arr)
{
return arr;
}
static void Bar(MainClass mc){}
public static void Main(string[] args)
{
Foo(Set(Bar, Bar), Set(Bar, Bar));
}
}
Actual Results:
Exception caught by the compiler while compiling:
Block that caused the problem begin at:
~/Projects/snafu/snafu/Main.cs(26,36):
Block being compiled:
[~/Projects/snafu/snafu/Main.cs(27,17):,~/Projects/snafu/snafu/Main.cs(29,17):]
Mono.CSharp.InternalErrorException: Couldn't create computed type
System.Action`1[snafu.MainClass][][]
Internal compiler error at ~/Projects/snafu/snafu/Main.cs(26,36):: exception
caught while emitting MethodBuilder [MainClass::Main]
Unhandled Exception: Mono.CSharp.InternalErrorException: Couldn't create
computed type System.Action`1[snafu.MainClass][][]
at Mono.CSharp.ComposedCast.DoResolveAsTypeStep (IResolveContext ec)
[0x00000]
at Mono.CSharp.TypeExpr.ResolveAsTypeStep (IResolveContext ec, Boolean
silent) [0x00000]
at Mono.CSharp.Expression.ResolveAsBaseTerminal (IResolveContext ec, Boolean
silent) [0x00000]
at Mono.CSharp.ComposedCast.ResolveAsTypeTerminal (IResolveContext ec,
Boolean silent) [0x00000]
at Mono.CSharp.ArrayCreation.ResolveArrayType (Mono.CSharp.EmitContext ec)
[0x00000]
at Mono.CSharp.ArrayCreation.DoResolve (Mono.CSharp.EmitContext ec) [0x00000]
at Mono.CSharp.Expression.Resolve (Mono.CSharp.EmitContext ec, ResolveFlags
flags) [0x00000]
at Mono.CSharp.Expression.Resolve (Mono.CSharp.EmitContext ec) [0x00000]
at Mono.CSharp.MethodGroupExpr.VerifyArgumentsCompat (Mono.CSharp.EmitContext
ec, System.Collections.ArrayList& arguments, Int32 arg_count,
System.Reflection.MethodBase method, Boolean chose_params_expanded, Boolean
may_fail, Location loc) [0x00000]
at Mono.CSharp.MethodGroupExpr.OverloadResolve (Mono.CSharp.EmitContext ec,
System.Collections.ArrayList& Arguments, Boolean may_fail, Location loc)
[0x00000]
at Mono.CSharp.Invocation.DoResolveOverload (Mono.CSharp.EmitContext ec)
[0x00000]
at Mono.CSharp.Invocation.DoResolve (Mono.CSharp.EmitContext ec) [0x00000]
at Mono.CSharp.Expression.Resolve (Mono.CSharp.EmitContext ec, ResolveFlags
flags) [0x00000]
at Mono.CSharp.Expression.Resolve (Mono.CSharp.EmitContext ec) [0x00000]
at Mono.CSharp.ExpressionStatement.ResolveStatement (Mono.CSharp.EmitContext
ec) [0x00000]
at Mono.CSharp.StatementExpression.Resolve (Mono.CSharp.EmitContext ec)
[0x00000]
at Mono.CSharp.Block.Resolve (Mono.CSharp.EmitContext ec) [0x00000]
at Mono.CSharp.EmitContext.ResolveTopBlock (Mono.CSharp.EmitContext
anonymous_method_host, Mono.CSharp.ToplevelBlock block,
Mono.CSharp.ParametersCompiled ip, IMethodData md, System.Boolean& unreachable)
[0x00000]
Expected Results:
No exception
How often does this happen?
every time
--
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