Fix printing of literals in fortran modes #584
Merged
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.
This supposed to be a "minimal" fix of #546 , in that it fixes the printing of literals
> 2^31-1
in fortran modes by adding the float suffix. It does not change the C mode, nor introduce any user-configurable parameter to choose a value.There are two more differences w.r.t master, so in some sense it is not an entirely "minimal" fix. Maybe someone has some comments:
fortran90
mode, the master branch adds a "." unconditionally, also to integers< 2^31-1
. This PR doesn't do this, it prints them in the same way asfortran
mode.pfortran
mode does not work properly in the master branch: it doesn't print the((one*integer)/integer)
format in all cases ("test32" in the test case, for eg).Additionally, note that in 32bit FORM, the master branch starts adding floating suffixes at
2^15-1
(and this PR at2^16-1
).