error 30 in file open under Linux

error 30 in file open under Linux

Hi,

I am using the following open specifiers under Windows and Linux when opening a file:

#if defined(_OS_WIN32_)     open(10, file='errors', status='unknown', access='append', share='denynone', action='write', buffered='no', defaultfile='', err=100)#else     open(10, file='errors', status='unknown', access='append', share='denynone', action='write', buffered='no')#endif

Under Windows it works fine but under Linux I am getting error 30 during open. Any clue why the Linux behaviour is different?

Thanks,

Rak

5 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

I forgot to mention that replacing action='write' by action='readwrite' solves the problem. Is there a conflict between the specifiers under Linux which is not present under Windows?

Hi Rak,

This is a bug in the compiler. I have escalated it to the developers. The issue number is DPD200237063. I will post any updates to this issue in the thread.

Regards,
Annalee
Intel Developer Support

Hello Rak,

Denynone gets a read lock which is incompatible with write mode. We are planning to change the compiler in the next major release so it will not request a lock for this combination of options. This will allow the program to run as expected.

Regards,
Annalee

Hello Rak,

This is issue has been fixed in Intel® Fortran Composer XE for Linux* 2013 Update 3 which is now available at the Intel® Registration Center.

Annalee

Login to leave a comment.