Stop using K&R C features that have been removed #764
+3
−63
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
C23 (N3054 (PDF)) has removed K&R1-style function declarations from its syntax (N2432 (PDF)). Maybe it's time to assume C89-compatible compilers are always available.
For example,
MesPrintis defined inmessage.cas follows:As a result, VSCode can't jump to
MesPrintusing "Go to Definition".We also assumes
<stdarg.h>is always available.We still use
ANSIto select the date and timer implementations, though probably no one tries to compile FORM for freestanding environments where<time.h>and similar headers are not available (except for WebAssembly?). This code may need to be refactored in the future.Note that there are many other places where K&R1 coding style is used (e.g.,
return(0);), but that's a separate issue (see also #712).