[Refactoring] Report errors in semantic phase for invalid combination of parameter storage classes

Do it in parsing phase reduces the chance of error reporting.