Template crashes DMD 0.149

Kramer Kramer_member at pathlink.com
Thu Mar 9 09:26:28 PST 2006


Issues with the code that follows.

1) Both "if" statements in the foreach in main crash DMD.  They can be commented
in any way as long as they're not commented together and they'll crash.

2) If you uncomment the "exists" function declaration (that is currently
commented) and comment the one below it, DMD will crash.

I could just be using templates incorrectly here, but in either case, it's a bug
that DMD crashes.

I'm using Win2k, DMD 0.149.

:void main() {
:    char[][] result, test;
:    
:    foreach (x; test) {
:        if (exists!(char[][], char[])(result, x) == true) {
:            return true;
:        }
:        if (exists(result, x) == true) {
:            return true;
:        }
:    }
:}

:template exists(T, U) {
:    //bool exists(T[][] src, U[] test) {
:    bool exists(T src, U test) {
:        foreach (x; src) {
:            if (x == test) {
:                return true;
:            }
:        }
:        
:        return false;
:    }
:}

-Kramer





More information about the Digitalmars-d-bugs mailing list