Bug 315801 (MONO63143) - mcs crashes if array initializer contains a delegate which references an instance member
Summary: mcs crashes if array initializer contains a delegate which references an inst...
Status: RESOLVED MOVED
Alias: MONO63143
Product: Mono: Compilers
Classification: Mono
Component: C# (show other bugs)
Version: unspecified
Hardware: Other Other
: P3 - Medium : Enhancement
Target Milestone: ---
Assignee: Mono Bugs
QA Contact: Mono Bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-08-16 15:37 UTC by Colin JN Breame
Modified: 2007-09-15 21:24 UTC (History)
0 users

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Wiest 2007-09-15 18:50:19 UTC


---- Reported by colin@breame.com 2004-08-16 08:37:16 MST ----

mcs 1.0.1.

public class A {
    D[] d = {
        new D(f)
    };

    public void f() {}
}

public delegate void D();

$ mcs test.cs
test.cs(3) error CS0236: A field initializer cannot reference the
non-static field, method or property `f'

Unhandled Exception: System.Exception: Expression Mono.CSharp.New ExprClass
is Invalid after resolve
in <0x0039c> Mono.CSharp.Expression:Resolve
(Mono.CSharp.EmitContext,Mono.CSharp.ResolveFlags)
in <0x00017> Mono.CSharp.Expression:Resolve (Mono.CSharp.EmitContext)
in <0x003a7> Mono.CSharp.ArrayCreation:CheckIndices
(Mono.CSharp.EmitContext,System.Collections.ArrayList,int,bool)
in <0x000b3> Mono.CSharp.ArrayCreation:ValidateInitializers
(Mono.CSharp.EmitContext,System.Type)
in <0x00090> Mono.CSharp.ArrayCreation:DoResolve (Mono.CSharp.EmitContext)
in <0x000ed> Mono.CSharp.Expression:Resolve
(Mono.CSharp.EmitContext,Mono.CSharp.ResolveFlags)
in <0x00017> Mono.CSharp.Expression:Resolve (Mono.CSharp.EmitContext)
in <0x000df> Mono.CSharp.Assign:DoResolve (Mono.CSharp.EmitContext)
in <0x000ed> Mono.CSharp.Expression:Resolve
(Mono.CSharp.EmitContext,Mono.CSharp.ResolveFlags)
in <0x00017> Mono.CSharp.Expression:Resolve (Mono.CSharp.EmitContext)
in <0x00020> Mono.CSharp.ExpressionStatement:ResolveStatement
(Mono.CSharp.EmitContext)
in <0x001b7> Mono.CSharp.TypeContainer:EmitFieldInitializers
(Mono.CSharp.EmitContext)
in <0x00388> Mono.CSharp.Constructor:Emit (Mono.CSharp.TypeContainer)
in <0x00427> Mono.CSharp.TypeContainer:Emit ()
in <0x00896> Mono.CSharp.RootContext:EmitCode ()
in <0x00c35> Mono.CSharp.Driver:MainDriver (string[])
in <0x00012> Mono.CSharp.Driver:Main (string[])



---- Additional Comments From bmaurer@users.sf.net 2004-08-29 14:28:03 MST ----



*** This bug has been marked as a duplicate of https://bugzilla.novell.com/show_bug.cgi?id=MONO63144 ***


Unknown bug field "cf_op_sys_details" encountered while moving bug
   <cf_op_sys_details>Gentoo</cf_op_sys_details>
Unknown operating system unknown. Setting to default OS "Other".
This bug was marked DUPLICATE in the database it was moved from.
    Changing resolution to "MOVED"