Bug 16050 – Template type parameter "action at at a distance"

Status
NEW
Severity
normal
Priority
P3
Component
dmd
Product
D
Version
D2
Platform
All
OS
Linux
Creation time
2016-05-20T21:48:24Z
Last change time
2024-12-13T18:47:52Z
Assigned to
No Owner
Creator
thomas.bockman
Moved to GitHub: dmd#19127 →

Comments

Comment #0 by thomas.bockman — 2016-05-20T21:48:24Z
"vit" on the D.lang forum found this bug: http://forum.dlang.org/post/[email protected] Starting with the following declarations: --- class Type { } class Foo(T : const T) { alias X = T; } alias Bar(T : Foo!Ts, Ts...) = Ts[0]; --- This will print "immutable(Type): --- alias F1 = Foo!(immutable(Type)); alias F2 = Foo!Type; pragma(msg, "Bar: ", Bar!(Foo!Type)); // Bar: immutable(Type) --- But this will print just "Type": --- alias F1 = Foo!Type; alias F2 = Foo!(immutable(Type)); pragma(msg, "Bar: ", Bar!(Foo!Type)); // Bar: Type --- The type of Bar!(Foo!Type) should not be effected by the existence or order of F1 and F2 above.
Comment #1 by robert.schadek — 2024-12-13T18:47:52Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dmd/issues/19127 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB