www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 19105] New: Bogus recursive template expansion via

https://issues.dlang.org/show_bug.cgi?id=19105

          Issue ID: 19105
           Summary: Bogus recursive template expansion via getSymbolsByUDA
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: bus_dlangzilla semitwist.com

---------------------------------------------
module junk;

import std.traits;

struct A(Args...) {}
struct B {}
alias C = A!( getSymbolsByUDA!(junk, B) );
---------------------------------------------

$ dmd junk.d
junk.d(7): Error: template instance `A!(getSymbolsByUDA!(junk, B))` recursive
template expansion
junk.d(7): Error: alias `junk.C` recursive alias declaration

--
Jul 21 2018