It couldnāt be detected in the parser because itās a syntactically valid expression.
It would be possible to make postXX methods throw an error if any argument is passed in, with the caveats 1/ postf expects argument(s) and 2/ it would rule out potential future usages with arguments (which donāt exist at this time, so, itās only a hypothetical concern).
Incidentally, the sclang code style guide recommends omitting the semicolon at the end of a function, to identify its return value. I tend to ignore that recommendation for the reason you discovered ā itās too easy to forget to add the semicolon back in when adding statements at the end of the function.
In any case, itās a tricky problem ā if we talk instead about another method (like round) where an argument is optional, then thereās really nothing that can be done to warn about missing semicolons.
This complains that āa Function does not understand ābāā⦠but for instance { ... } round: { ... } is a valid way to create a binary operator function. So thereās nothing that can be done to reduce the confusion, without dropping a supported syntax.