- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello All,
can some somebody help me what is the following bug
error: #6640: This input/output keyword is invalid.
error #6332: A UNIT= specifier is required for this I/O operation.
#ifdef CONM2_OUT
tempstr = './output/CS.conm2_', iloop
call mg1g12conm2(CS_ID, tempstr)
#endif
Link Copied
3 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Post the actual code that caused the error message. There are no recognizable I/O statements in the fragment posted, but it is hard to tell without seeing the relevant variable and type declarations.
The statement [fortran]tempstr = './output/CS.conm2_', iloop[/fortran] appears suspicious. What is it supposed to do? Perhaps, [fortran]write(tempstr,'(A,I0)')'./output/CS.conm2_', iloop[/fortran] is what was intended?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Well, you've only shown a brief excerpt of your code.
As mecej4 says -- the tempstr assignment appears strange, not valid. (I0 is probably not correct in his reply, but otherwise, it is right on track)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I0 is probably not correct in his replyLinda, The specification of a zero field width is allowed. It helps produce a minimal length string of digits (no leading blanks or zeros) from an integer. Section 10.7.2.1, Rule (2) of the Fortran 2008 standard says
(6) On output, with I, B, O, Z, F, and G editing, the specified value of the field width w may be zero. In such cases, the processor selects the smallest positive actual field width that does not result in a field filled with asterisks.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page