[Issue 2355] New: is() fails to recognize a static array

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Sep 11 09:46:30 PDT 2008


http://d.puremagic.com/issues/show_bug.cgi?id=2355

           Summary: is() fails to recognize a static array
           Product: D
           Version: 2.019
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla at digitalmars.com
        ReportedBy: snake.scaly at gmail.com


template IsStatic(T : T[S], size_t S) {enum IsStatic = "true: " ~ T.stringof;}
template IsStatic(T) {enum IsStatic = "false";}

template IsStaticSmart(T) {
  static if (is(T E : E[S], size_t S))
    enum IsStaticSmart = "true: " ~ E.stringof;
  else
    enum IsStaticSmart = "false";
}

pragma(msg, IsStatic!(typeof("a")));
pragma(msg, IsStaticSmart!(typeof("a")));

Console output:

>dmd -c test3.d
true: invariant(char)
false


-- 



More information about the Digitalmars-d-bugs mailing list