- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am on release 11.1.046 and encountered runtime error 38 when attempting to write to a console (unit *) in a dll. Writing to unit 6 works around the problem - can someone explain why?
I read there is a fix for calling STOP 0 in the same situation which also produces 38 (DPD200139029 in the release notes for 11.1.051: http://software.intel.com/en-us/articles/intel-professional-edition-compilers-111-fixes-list/). Will a fix also be provided for writing to a console that doesn't exist or should the unit 6 workaround suffice? I'd prefer to avoid doing an AllocConsole. The dll may need to be recompiled as a Fortran console project in future so I'd prefer to leave any WRITE statements intact.
Thanks.
Link Copied
3 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The error is the intended behavior. Earlier releases silently ignored the error when writing to a non-existent console, and we considered that a bug. The STOP 0 issue is unrelated.
I tried a test case writing to unit 6 and saw an error the same as for unit *.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks. I'm not sure why it works, as I thought units 6 and * were interchangeable.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - pdm2009
Thanks. I'm not sure why it works, as I thought units 6 and * were interchangeable.
They're not by default - at least not currently - unless you specify /assume:noold_unit_star

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