The purpose of safe integral operations like muls() is to detect overflow bugs at run-time. If they don't detect bugs, they are not useful.
I think it detects the overflow correctly even if you use the (uint, int) argument pair, because the usual conversions are used, and I think the mulu is called, that returns the overflow boolean as true.
Bye, bearophile
