DMD 2.053: import std.string; void main() { const string s = "foo5x"; auto s2 = removechars(s, "^A-Z"); } test.d(4): Error: template std.string.removechars(S) if (isSomeString!(S)) does not match any function template declaration test.d(4): Error: template std.string.removechars(S) if (isSomeString!(S)) cannot deduce template function from argument types !()(const(immutable(char)[]),string) (Additionally, removechars is not pure nothrow.)
Compiles and runs fine on 2.059 Win32
import std.string, std.stdio; void main() nothrow { const string s = "foAo5x"; auto s2 = removechars(s, "^A-Z"); } With dmd 2.060alpha it gives: test.d(4): Error: removechars is not nothrow test.d(2): Error: function D main 'main' is nothrow yet may throw So removechars is not nothrow, but the main problem is fixed, so I close this issue.