Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

severe (38): error during write

Martin__Paul
New Contributor I
600 Views

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.

0 Kudos
3 Replies
Steven_L_Intel1
Employee
600 Views

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 *.
0 Kudos
Martin__Paul
New Contributor I
600 Views
Thanks. I'm not sure why it works, as I thought units 6 and * were interchangeable.
0 Kudos
Steven_L_Intel1
Employee
600 Views
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
0 Kudos
Reply