November 15, 2006 [Issue 506] New: static import and renamed import of mixin don't work | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=506 Summary: static import and renamed import of mixin don't work Product: D Version: 0.173 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla@digitalmars.com ReportedBy: wbaxter@gmail.com static import and renamed import of a mixin don't work if the mixin itself has imports. This is a continuation of http://d.puremagic.com/issues/show_bug.cgi?id=498 which covers the basic import case. The fix for that however does not fix the static import and renamed import cases (import sigs=std.signals) cases. Here's examples: ------ import sigs=std.signals; class SigObj { mixin sigs.Signal!(); } void main() { } ---- static import std.signals; class SigObj { mixin std.signals.Signal!(); } void main() { } -- |
November 26, 2006 [Issue 506] static import and renamed import of mixin don't work | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=506 bugzilla@digitalmars.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID ------- Comment #1 from bugzilla@digitalmars.com 2006-11-26 03:06 ------- mixins are defined to be evaluated in the scope of where they are mixed in, rather than where they are declared. Hence the behavior you're seeing. To evaluate it in the context where it is declared, use a struct. It's working as designed. To change it, please submit an enhancement request. -- |
Copyright © 1999-2021 by the D Language Foundation