[Issue 9281] Enum struct with op overloading doesnt works
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Thu Jan 10 23:16:34 PST 2013
http://d.puremagic.com/issues/show_bug.cgi?id=9281
Kenji Hara <k.hara.pg at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |INVALID
--- Comment #4 from Kenji Hara <k.hara.pg at gmail.com> 2013-01-10 23:16:33 PST ---
(In reply to comment #3)
> I think this _was_ an accepts-invalid bug in 2.060.
> If you define Ob2.COLUMNS in 2.060, Ob2.COLUM_A is _incorrectly_ typed as
> immutable(Column). This is definitely a bug (But I don't know what change is
> fixed the bug in 2.060).
I found a commit which the behavior is changed.
https://github.com/D-Programming-Language/dmd/commit/e01eb59f842dfe7a5275d96c420691c4a64f57f4
The root cause of the bug 5779 was an optimizer bug.
If the type of an optimized result is different from the type of a source
expression, the source expression type had been accidentally modified.
In this case, the declaration of COLUMNS invokes optimizer on the expression [
COLUM_A, ], and it accidentally modified the type of COLUM_A to
immutable(Column).
So the conclusion is: the original code had an accepts-invalid bug, and it was
already fixed in 2.061.
I'll mark this as "resolved-invalid" bug.
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list