[flang] Fix character length checking in ALLOCATE (#163657)
The known character length compatibility check for ALLOCATE statements
needs to allow for negative lengths, which are effectively zero.
Fixes https://github.com/llvm/llvm-project/issues/163242.