It was quite hard to track that one down.
In the following example the import statement was mixed into the class
among other code so it wasn't as obvious as here.
import std.traits;
class Foo
{
import std.string;
static assert(isNumeric!int);
}
foo.d(6): Error: template instance isNumeric is not a template
declaration, it is a function
foo.d(6): Error: static assert (isNumeric!(int)) is not evaluatable at
compile time
(There's an isNumeric function in std.string)
Local variables override global ones, but is this correct as well?