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

remark #8291

Jasmeet_S_
Beginner
1,354 Views

Hi,

while compilation of source codes I am facing the following issue:

remark #8291: Recommended relationship between field width 'W' and the number of fractional digits 'D' in this edit descriptor

is 'W>=D+7'.
 97   FORMAT(////10X,'NUCLEAR REPULSION ENERGY=',E13.7////)

 

0 Kudos
6 Replies
Steve_Lionel
Honored Contributor III
1,354 Views

It's an informational message based on the fact that in an E format, if W is not at least 7 greater than D, you could get format overflow. In your case, if the value is negative that would require 14 characters (sign, leading digit, decimal, E, exponent sign, two exponent digits), or lose the E if the value exceeded 10**99.

You can ignore it if you want, and can suppress it with -diag-disable8291

0 Kudos
mecej4
Honored Contributor III
1,354 Views

That warning is necessary because the compiler does not know whether or not the number being printed may cover the full range of real numbers. For double precision reals, the exponent is 3 digits, so the exponent field Eseee, where 's' is the sign and eee is the three digit exponent, is 5 characters long. Then you need 2 more for the mantissa sign and the decimal point, which gives w >= d+7.

If you know that the output numbers will not use d+7 characters, you may just ignore the message.

P.S. Steve posted while I was writing this; since he covered the question completely, my post can be removed.

0 Kudos
Jasmeet_S_
Beginner
1,354 Views

Thanks Steve. But where to add -diag-disable8291

After ignoring the above said message, I compiled the source code and binaries are created.

But when I tried to run script files. There is an error. I want to know is it due to the effect of remark #8291 or something else:

The issue is

+++ /home/jasmeet/ukrmol/release-1.0/bin/scatci
forrtl: severe (67): input statement requires too much data, unit 70, file /home/jasmeet/ukrmol/release-1.0/tests/H2O/scripts/fort.70
Image              PC                Routine            Line        Source            
scatci             0000000000463283  Unknown               Unknown  Unknown
scatci             0000000000487F86  Unknown               Unknown  Unknown
scatci             0000000000485B43  Unknown               Unknown  Unknown
scatci             000000000040A75D  Unknown               Unknown  Unknown
scatci             000000000040568A  Unknown               Unknown  Unknown
scatci             00000000004055AE  Unknown               Unknown  Unknown
libc.so.6          00007F17850CF830  Unknown               Unknown  Unknown
scatci             00000000004054A9  Unknown               Unknown  Unknown

0 Kudos
mecej4
Honored Contributor III
1,354 Views

Jasmeet S. wrote:
 Thanks Steve. But where to add -diag-disable8291

As a compiler option, at the command line or in the Visual Studio settings for compiler options .

The runtime I/O error has nothing to do with the warning regarding w >= d+7. You should probably recompile with -traceback. You have a mismatch between how much data is called for in the I/O list and how much data is in the input file. Investigating this can be done only if the source code and data files are provided. If the error occurs at a READ statement other than the very first READ for that file, an error in an earlier READ can cause a subsequent READ to attempt to read the wrong or a non-existing line in the data file.

 

0 Kudos
Jasmeet_S_
Beginner
1,354 Views

Thank you mecej4 for your interest.

I have resolved the issue on my own. Thanks Steve.

0 Kudos
Clark__Austin
Beginner
1,354 Views

Hi Jasmeet S.,

I am running into a similar problem installing some AIMD software. Would you mind sharing how you overcame it?

Thanks!

0 Kudos
Reply