Compiler bug..?
Regan Heath
regan at netmail.co.nz
Mon Oct 22 04:14:54 PDT 2007
Simen Haugen wrote:
> static if( 1 ) {
> int var;
> }
>
> static if( 1 ) {
> float var; // Error, var already defined. As expected.
> }
>
>
> But if we do this....
>
> static if(is(int T == int)) {
> writefln("T: ", typeid(T)); // T: int
> }
>
> static if(is(float T == float)) {
> writefln("T: ", typeid(T)); // T: int.... Where's my float?
> }
>
> Shouldn't this be a compiler error, or at least a warning?
Which version of DMD are you using?
With 2.005 I get an error of "Error: declaration T is already defined"
on the 2nd static if line.
Regan
More information about the Digitalmars-d
mailing list