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

Experience with IF for W 7.0

david_jones
Beginner
781 Views
Having downloaded the trial version of Intel Fortran for Windows, and seeing no other direct comments, I thought I might begin...

(1) I have found I need to use the compiler option /nbs (no backslash) in order for my INCLUDE lines of the form
include 'C:aaabb.for'
to be interpreted correctly. This would prevent cases where backslash does need to be treated as an escape character from working ( don't have any, I think). Are there plans for character-strings in INCLUDE lines to be exempted automatically from treating backslash as an escape character?

(2)I am using IFL from the command-line. Is there a recommended way of sending complier error & warning messages to a file? I can't see a specific command-line option. I have tried an explicit re-direct using ">", but this didn't seem successful ... I did get some output in the file, but seemingly only for the first compilation unit (main program), whereas I was trying to work with a pre-existing file containing INCLUDE's for several hundred subroutines. This presently produces several screens-full of compiler messages which I can't scroll back through. I would prefer a mechanism via the command-line options since I could then put it in the command line response file?
0 Kudos
5 Replies
TimP
Honored Contributor III
781 Views
1. Your observation coincides with my experience. If you don't use /nbs, you will need to double the backslashes.

2. With the Windows or the bash shells, you probably want something like:

ifl *.f >build.log 2>&1

which makes both "stdout" and "stderr" messages go to the file.
0 Kudos
Steven_L_Intel1
Employee
781 Views
I feel fairly confident in saying that the backslash behavior won't persist into the combined Intel Visual Fortran product. I hadn't realized IFL7 did that.

Steve
0 Kudos
david_jones
Beginner
781 Views
Thanks, Timothy, for the suggestion, but it doesn't work for me on Win98SE. It seems the part "2>&1" gets interpreted by ifl as a name "2" for an object file, and a file named "&1" is creted containing some of standard output from the compiler.

I have made a little progress with regard to options /list and /show:include. If I use neither, then then the redirected standard output file contains just a few lines: a header announcing the start of the main program, a single error message and the total number of errors. If I use /list, then the file contains much more: it lists each INCLUDE line and seems to print each error messsage, with a pointer " ^ " to where the error should be, but unfortunately it does not show the actual line containing the error, so that pointer points nowhere. The option /show:include, which is meant (?) to list the source code in INCLUDE files, seemed to have no effect at all.

I have not found a way of diverting stderr, if this is needed.
0 Kudos
Steven_L_Intel1
Employee
781 Views
W98 doesn't support that form of redirection. CVF provides an EC.EXE tool in the "USUPPORT" folder of the CD-ROM that makes up for this - you can also find it here. You use it like this:

ec ifl prog.f90 > build.log 2>&1


Steve
0 Kudos
david_jones
Beginner
781 Views
Thanks Steve,... The only way I have found of using "ec" with redirection while supplying compiler options (and getting all the compiler messages into the redirection file) is to put the options in the ifl.cfg file in the directory ../IA32/Bin. (However I didn't try whether a file of the same name in the working directory would work.) This applied to using "ec" with and without quotes around the command-string following.

David Jones
0 Kudos
Reply