Reproduced on Terraform 1.14.0 with terraform validate. A typo, inputs for input, printed Error: Unsupported argument and An argument named "inputs" is not expected here. Did you mean "input"?
Writing an argument as a block, input { ... }, printed Error: Unsupported block type and Did you mean to define argument "input"? If so, use the equals sign to assign it a value. The reverse, lifecycle = { ... } where lifecycle is a block, printed Unsupported argument with no suggestion.
Passing region to a module that declares only a name variable printed the same Unsupported argument: for a module, the accepted names are its variable blocks.
When a provider adds an argument in a newer version or removes one in a major version, configuration written for one version fails this check under the other. That follows from how the check works; it was not reproduced here, because no real provider was downloaded.