[quote='DanRRight']I do not see the problem here, can you show an example killing the idea?
The Fortran standard allows anything to be included after the trailing bracket. Like this contrived example:
write(*,'(I5) THIS IS IGNORED') 10
The following code needs the brackets to work. The first format specifier is seen as the character array '(I5) (F5.0)'. Without the brackets it would look like 'I5 F5.0' which would be an error. A compiler is not required to detect this error (how could it?) but a run time error should be generated.
The standard says:
'If the format specifier references a character array, it is treated as if all of the elements of the array were specified in array element order and were concatenated. However, if a format specifier references a character array element, the format specification shall be entirely within that array
element.'
character(len=6) :: fmt(2)
fmt(1) = '(I5)'; fmt(2) = '(F5.0)'
write(*, fmt) 10 !< Here the format specifier is '(I5) (F5.0)'
end