All these workarounds are an invitation for disaster, David. Formally, we are allowed to put comment with exclamation mark in any place, so the compiler should treat that correctly.
This is large legacy code, it is not mine, it uses 72 char default limit and i permanently catch errors associated with over-the-limit use of variables with this specific compiler as the code evolves since the authors own ones (many other compilers) do not care about this and a lot of other potential bugs (as we well know that from polyhedron site). As a result instead of checking 1-2 real warning instances i have to look at hundreds. This is because just one such error -- and you will never find why the results are bad. So these warning could be deadliest errors.
Besides the compiler reports truncated lines with extreme ambiguity. Look at the code (use tab before print*)
print*,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' !ccccc
print*,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' !ccccc
print*,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' !ccccc
!X print*,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' !ccccc
! print*,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' !ccccc
! print*,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' !ccccc
end
It goes with no errors or warnings. But if you remove just one comment marked X even the diagnostics is completely wrong: 'WARNING - There are (at least) 2 truncated line(s) in this file' (!!!).
By the way, i also like exclamation comments put anywhere i want