No range should have an element type of `char`, they should always be `dchar` (e.g. `std.array.front` returns `dchar` for all strings). I suppose it's still technically possible to write, and so could erroneously appear in third-party code.

A better check could also be:
```d
static if (is(A : const(char[])))
```