https://issues.dlang.org/show_bug.cgi?id=7184
--- Comment #7 from Simen Kjaeraas <simen.kja...@gmail.com> --- Unsurprisingly, the function call variant is somewhat unfixable. (T)(a+b) is a very common cast in C, and looks a lot like a function call where T is a function. Even (T)(1,2,3) is valid C. It would probably be possible to make this an error at a later point - when we know that the content of the parentheses does evaluate to a type. Anyways, PR: https://github.com/dlang/dmd/pull/7281 --