[Mono-bugs] [Bug 78738][Nor] New - using private const in an attribute causes an exception
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Fri Jun 30 09:47:43 EDT 2006
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 toshok at ximian.com.
http://bugzilla.ximian.com/show_bug.cgi?id=78738
--- shadow/78738 2006-06-30 09:47:43.000000000 -0400
+++ shadow/78738.tmp.16764 2006-06-30 09:47:43.000000000 -0400
@@ -0,0 +1,168 @@
+Bug#: 78738
+Product: Mono: Compilers
+Version: unspecified
+OS:
+OS Details:
+Status: NEW
+Resolution:
+Severity:
+Priority: Normal
+Component: C#
+AssignedTo: rharinath at novell.com
+ReportedBy: toshok at ximian.com
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: using private const in an attribute causes an exception
+
+the following test:
+
+========
+using System.Reflection;
+
+class Const
+{
+ const string Version = "0.1";
+}
+
+[assembly: AssemblyVersion(Const.Version)]
+=========
+
+fails on both mcs and gmcs with an exception.
+
+gmcs:
+Unhandled Exception: System.NullReferenceException: Object reference not
+set to an instance of an object
+ at Mono.CSharp.TypeManager.IsPrivateAccessible (System.Type type,
+System.Type parent) [0x00000] in /src/mono/mcs/gmcs/typemanager.cs:1639
+ at Mono.CSharp.TypeManager+Closure.Filter (System.Reflection.MemberInfo
+m, System.Object filter_criteria) [0x0014c] in
+/src/mono/mcs/gmcs/typemanager.cs:2671
+ at (wrapper delegate-invoke)
+System.MulticastDelegate:invoke_bool_MemberInfo_object
+(System.Reflection.MemberInfo,object)
+ at Mono.CSharp.MemberCache.FindMembers (MemberTypes mt, BindingFlags bf,
+System.String name, System.Reflection.MemberFilter filter, System.Object
+criteria) [0x00125] in /src/mono/mcs/gmcs/decl.cs:1977
+ at Mono.CSharp.TypeManager.MemberLookup_FindMembers (System.Type t,
+MemberTypes mt, BindingFlags bf, System.String name, System.Boolean
+used_cache) [0x0002e] in /src/mono/mcs/gmcs/typemanager.cs:1388
+ at Mono.CSharp.TypeManager.RealMemberLookup (System.Type invocation_type,
+System.Type qualifier_type, System.Type queried_type, MemberTypes mt,
+BindingFlags original_bf, System.String name, IList almost_match) [0x000b4]
+in /src/mono/mcs/gmcs/typemanager.cs:2790
+ at Mono.CSharp.TypeManager.MemberLookup (System.Type invocation_type,
+System.Type qualifier_type, System.Type queried_type, MemberTypes mt,
+BindingFlags original_bf, System.String name, IList almost_match) [0x00000]
+in /src/mono/mcs/gmcs/typemanager.cs:2735
+ at Mono.CSharp.Expression.MemberLookup (System.Type container_type,
+System.Type qualifier_type, System.Type queried_type, System.String name,
+MemberTypes mt, BindingFlags bf, Location loc) [0x0000a] in
+/src/mono/mcs/gmcs/ecore.cs:655
+ at Mono.CSharp.Expression.MemberLookup (System.Type container_type,
+System.Type qualifier_type, System.Type queried_type, System.String name,
+Location loc) [0x00000] in /src/mono/mcs/gmcs/ecore.cs:695
+ at Mono.CSharp.MemberAccess.DoResolve (Mono.CSharp.EmitContext ec,
+Mono.CSharp.Expression right_side) [0x00124] in
+/src/mono/mcs/gmcs/expression.cs:7163
+ at Mono.CSharp.MemberAccess.DoResolve (Mono.CSharp.EmitContext ec)
+[0x00000] in /src/mono/mcs/gmcs/expression.cs:7235
+ at Mono.CSharp.Expression.Resolve (Mono.CSharp.EmitContext ec,
+ResolveFlags flags) [0x00066] in /src/mono/mcs/gmcs/ecore.cs:399
+ at Mono.CSharp.Expression.Resolve (Mono.CSharp.EmitContext ec) [0x00000]
+in /src/mono/mcs/gmcs/ecore.cs:427
+ at Mono.CSharp.Argument.Resolve (Mono.CSharp.EmitContext ec, Location
+loc) [0x0001a] in /src/mono/mcs/gmcs/expression.cs:3932
+ at Mono.CSharp.Attribute.ResolveConstructor (Mono.CSharp.EmitContext ec)
+[0x00025] in /src/mono/mcs/gmcs/attribute.cs:388
+ at Mono.CSharp.GlobalAttribute.ResolveConstructor
+(Mono.CSharp.EmitContext ec) [0x00006] in /src/mono/mcs/gmcs/attribute.cs:1414
+ at Mono.CSharp.Attribute.Resolve () [0x00111] in
+/src/mono/mcs/gmcs/attribute.cs:342
+ at Mono.CSharp.Attribute.Emit
+(System.Collections.Specialized.ListDictionary allEmitted) [0x00000] in
+/src/mono/mcs/gmcs/attribute.cs:1145
+ at Mono.CSharp.Attributes.Emit () [0x00041] in
+/src/mono/mcs/gmcs/attribute.cs:1504
+ at Mono.CSharp.CommonAssemblyModulClass.Emit (Mono.CSharp.TypeContainer
+tc) [0x0000d] in /src/mono/mcs/gmcs/codegen.cs:1026
+ at Mono.CSharp.AssemblyClass.Emit (Mono.CSharp.TypeContainer tc)
+[0x00000] in /src/mono/mcs/gmcs/codegen.cs:1382
+ at Mono.CSharp.RootContext.EmitCode () [0x00191] in
+/src/mono/mcs/gmcs/rootcontext.cs:629
+ at Mono.CSharp.Driver.MainDriver (System.String[] args) [0x005cd] in
+/src/mono/mcs/gmcs/driver.cs:1714
+ at Mono.CSharp.Driver.Main (System.String[] args) [0x0001f] in
+/src/mono/mcs/gmcs/driver.cs:290
+
+
+mcs:
+
+Unhandled Exception: System.NullReferenceException: Object reference not
+set to an instance of an object
+ at Mono.CSharp.TypeManager.IsNestedChildOf (System.Type type, System.Type
+parent) [0x00009] in /src/mono/mcs/mcs/typemanager.cs:1446
+ at Mono.CSharp.TypeManager+Closure.Filter (System.Reflection.MemberInfo
+m, System.Object filter_criteria) [0x00126] in
+/src/mono/mcs/mcs/typemanager.cs:2244
+ at (wrapper delegate-invoke)
+System.MulticastDelegate:invoke_bool_MemberInfo_object
+(System.Reflection.MemberInfo,object)
+ at Mono.CSharp.MemberCache.FindMembers (MemberTypes mt, BindingFlags bf,
+System.String name, System.Reflection.MemberFilter filter, System.Object
+criteria) [0x00125] in /src/mono/mcs/mcs/decl.cs:1665
+ at Mono.CSharp.TypeManager.MemberLookup_FindMembers (System.Type t,
+MemberTypes mt, BindingFlags bf, System.String name, System.Boolean
+used_cache) [0x00066] in /src/mono/mcs/mcs/typemanager.cs:1241
+ at Mono.CSharp.TypeManager.RealMemberLookup (System.Type invocation_type,
+System.Type qualifier_type, System.Type queried_type, MemberTypes mt,
+BindingFlags original_bf, System.String name, IList almost_match) [0x000b4]
+in /src/mono/mcs/mcs/typemanager.cs:2366
+ at Mono.CSharp.TypeManager.MemberLookup (System.Type invocation_type,
+System.Type qualifier_type, System.Type queried_type, MemberTypes mt,
+BindingFlags original_bf, System.String name, IList almost_match) [0x00000]
+in /src/mono/mcs/mcs/typemanager.cs:2311
+ at Mono.CSharp.Expression.MemberLookup (System.Type container_type,
+System.Type qualifier_type, System.Type queried_type, System.String name,
+MemberTypes mt, BindingFlags bf, Location loc) [0x0000a] in
+/src/mono/mcs/mcs/ecore.cs:645
+ at Mono.CSharp.Expression.MemberLookupFinal (Mono.CSharp.EmitContext ec,
+System.Type qualifier_type, System.Type queried_type, System.String name,
+MemberTypes mt, BindingFlags bf, Location loc) [0x00006] in
+/src/mono/mcs/mcs/ecore.cs:718
+ at Mono.CSharp.Expression.MemberLookupFinal (Mono.CSharp.EmitContext ec,
+System.Type qualifier_type, System.Type queried_type, System.String name,
+Location loc) [0x00000] in /src/mono/mcs/mcs/ecore.cs:705
+ at Mono.CSharp.MemberAccess.DoResolve (Mono.CSharp.EmitContext ec,
+Mono.CSharp.Expression right_side) [0x000e4] in
+/src/mono/mcs/mcs/expression.cs:6829
+ at Mono.CSharp.MemberAccess.DoResolve (Mono.CSharp.EmitContext ec)
+[0x00000] in /src/mono/mcs/mcs/expression.cs:6869
+ at Mono.CSharp.Expression.Resolve (Mono.CSharp.EmitContext ec,
+ResolveFlags flags) [0x00066] in /src/mono/mcs/mcs/ecore.cs:389
+ at Mono.CSharp.Expression.Resolve (Mono.CSharp.EmitContext ec) [0x00000]
+in /src/mono/mcs/mcs/ecore.cs:417
+ at Mono.CSharp.Argument.Resolve (Mono.CSharp.EmitContext ec, Location
+loc) [0x0001a] in /src/mono/mcs/mcs/expression.cs:3835
+ at Mono.CSharp.Attribute.ResolveConstructor (Mono.CSharp.EmitContext ec)
+[0x00025] in /src/mono/mcs/mcs/attribute.cs:376
+ at Mono.CSharp.GlobalAttribute.ResolveConstructor
+(Mono.CSharp.EmitContext ec) [0x00006] in /src/mono/mcs/mcs/attribute.cs:1391
+ at Mono.CSharp.Attribute.Resolve () [0x00111] in
+/src/mono/mcs/mcs/attribute.cs:336
+ at Mono.CSharp.Attribute.Emit
+(System.Collections.Specialized.ListDictionary allEmitted) [0x00000] in
+/src/mono/mcs/mcs/attribute.cs:1122
+ at Mono.CSharp.Attributes.Emit () [0x00041] in
+/src/mono/mcs/mcs/attribute.cs:1481
+ at Mono.CSharp.CommonAssemblyModulClass.Emit (Mono.CSharp.TypeContainer
+tc) [0x0000d] in /src/mono/mcs/mcs/codegen.cs:1012
+ at Mono.CSharp.AssemblyClass.Emit (Mono.CSharp.TypeContainer tc)
+[0x00000] in /src/mono/mcs/mcs/codegen.cs:1294
+ at Mono.CSharp.RootContext.EmitCode () [0x00191] in
+/src/mono/mcs/mcs/rootcontext.cs:614
+ at Mono.CSharp.Driver.MainDriver (System.String[] args) [0x005cd] in
+/src/mono/mcs/mcs/driver.cs:1711
+ at Mono.CSharp.Driver.Main (System.String[] args) [0x00019] in
+/src/mono/mcs/mcs/driver.cs:290
More information about the mono-bugs
mailing list