[Mono-bugs] [Bug 31984][Nor] Changed - mcs doesn't correctly resolve const value uses depending on file compilation order
bugzilla-daemon@bugzilla.ximian.com
bugzilla-daemon@bugzilla.ximian.com
Tue, 1 Feb 2005 07:58:39 -0500 (EST)
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 rharinath@novell.com.
http://bugzilla.ximian.com/show_bug.cgi?id=31984
--- shadow/31984 2004-12-30 17:58:53.000000000 -0500
+++ shadow/31984.tmp.14471 2005-02-01 07:58:39.000000000 -0500
@@ -1,13 +1,13 @@
Bug#: 31984
Product: Mono: Compilers
Version: unspecified
OS: unknown
OS Details:
-Status: NEW
-Resolution:
+Status: RESOLVED
+Resolution: FIXED
Severity: 080 Two weeks
Priority: Normal
Component: C#
AssignedTo: mono-bugs@ximian.com
ReportedBy: vladimir@pobox.com
QAContact: mono-bugs@ximian.com
@@ -73,6 +73,19 @@
------- Additional Comments From vladimir@pobox.com 2003-08-19 03:08 -------
Bug still exists in mono/mcs 0.26.
------- Additional Comments From bmaurer@users.sf.net 2004-12-30 17:58 -------
*** Bug 70901 has been marked as a duplicate of this bug. ***
+
+------- Additional Comments From rharinath@novell.com 2005-02-01 07:58 -------
+OK, given that this is a long-standing bug ...
+
+I checked in a fix to decl.FindMembers to go ahead and define
+uninitialized types and constants when they're looked up. This should
+solve the "forward reference" problem by tying the knot here.
+
+Note that the evaluation of the _value_ of the constant happens in the
+Emit() stage -- so this should not trigger additional lookups.
+Similarly, the members of types are defined in a later pass. Any
+additional lookups will be for base types, and we already have code to
+prevent a type from deriving on itself.