Intel® Fortran Compiler for Windows* 19.1 Release Notes for Intel® Parallel Studio XE 2020

ID 672218
Updated 10/20/2020
Version Latest
Public

author-image

By

This document provides a summary of new and changed product features and includes notes about features and problems not described in the product documentation.

Please see the licenses included in the distribution as well as the Disclaimer and Legal Information section of these release notes for details. Please see the following links for information on this release of the Intel® Fortran Compiler for Windows, version 19.1.

Change History

This section highlights important changes from the previous product version and changes in product updates.

Changes in Update 4 (Intel® Fortran Compiler 19.1.3)

  • Corrections to reported problems.

Changes in Update 3

  • Not applicable for Windows*

NOTE: Intel® Parallel Studio XE 2020 Composer Edition for Fortran and C++ Linux* contains an update to the Intel® C++ Compiler next generation code generator. This is invoked using the -qnextgen option to the ICC and ICPC compilers. This update to the Intel® C++ Compiler next generation code generator includes our latest updates and features for our C++ next generation compiler invoked with the -qnextgen option.

  • There are no new features, bug fixes, or security enhancements for the Intel® Fortran Compiler or the Intel® C++ Compiler without the -qnextgen option.
  • Intel® Parallel Studio XE 2020 Update 3 is available for the Intel® Parallel Studio XE 2020 Composer Edition for Fortran and C++ Linux*.
  • This is a Linux-only release: there is no Update 3 release for either Windows* or macOS* operating systems.
  • In addition, it is only a Composer Edition release: there is no Update 3 release for either Professional or Cluster Editions of Intel® Parallel Studio XE 2020.
  • There is no update to the Intel® C++ and Fortran Compilers Redistributable Libraries. The Update 2 versions of these libraries are compatible and should be used.
  • There is no update for the Intel® Parallel Studio XE Runtime 2020 YUM* and APT* repository packages. Continue to use the Update 2 packages of this runtime.

Changes in Update 2 (Intel® Fortran Compiler 19.1.2)

  • Corrections to reported problems.

Changes in Update 1 (Intel® Fortran Compiler 19.1.1)

  • Corrections to reported problems.

Changes since Intel® Fortran Compiler for Windows*, version 19.0
(New in Intel® Fortran Compiler 19.1.0)

Back to top

Product Contents

Intel® Fortran Compiler for Windows* version 19.1 initial release and updates include the following components:

  • Intel® Fortran Compiler for Windows*, version 19.1 and updates for building applications that run on IA-32 and Intel® 64 architecture systems
  • Fortran Expression Evaluator (FEE) for debugging Fortran applications with Microsoft Visual Studio*
  • Integration into Microsoft* development environments
  • Online documentation and sample programs

Back to top

System Requirements

  • A PC based on an Intel® 64 architecture processor supporting the Intel® Streaming SIMD Extensions 2 (Intel® SSE2) instructions (2nd Generation or newer Generation of Intel® Core™ i3, i5, or i7 processors and Intel® Xeon® E3, E5 or E7 processor family, or compatible non-Intel processor)
    • For the best experience, a multi-core or multi-processor system is recommended
  • 2GB RAM (4GB recommended)
  • 14GB free disk space required for all product features and all architectures
  • Microsoft Windows 10*, Microsoft Windows Server 2016*, Microsoft Windows Server 2019* [1]
  • To use the Microsoft Visual Studio development environment or command-line tools to build IA-32[2] or Intel® 64 architecture applications:
    • Microsoft Visual Studio 2017* Professional Edition (or higher edition) or Microsoft Visual Studio Community 2017* with 'Desktop development with C++' component installed [3]
    • Microsoft Visual Studio 2019* Professional Edition (or higher edition) or Microsoft Visual Studio Community 2019* with 'Desktop development with C++' component installed
    • Read this article for the version of Microsoft Visual Studio supported by compiler release.
  • To use command-line tools only to build Intel® 64 architecture applications:
    • Microsoft Build Tools 2019*
  • To read the on-disk documentation, Adobe Reader* 7.0 or later

Notes:

  1. Applications can be run on the same Windows versions as specified above for development. Applications may also run on non-embedded 32-bit versions of Microsoft Windows earlier than Windows 10, though Intel does not test these for compatibility. Your application may depend on a Windows API routine not present in older versions of Windows. You are responsible for testing application compatibility. You may need to copy certain run-time DLLs onto the target system to run your application.
  2. The default for Intel® Fortran Compiler for Windows* is to build IA-32 architecture applications that require a processor supporting the Intel® SSE2 instructions. A compiler option is available to generate code that will run on any IA-32 architecture processor. Note, however, that applications calling Intel® MKL require a processor supporting the Intel® SSE2 instructions.
  3. To use the Intel® Fortran Compiler for Windows* with Microsoft Visual Studio 2017*, it is necessary to install the 'Desktop development with C++' component from Visual Studio. This article explains how.

Back to top

How to install the Intel® Fortran Compiler for Windows*

Installation instructions are shipped with all Intel® Software Development Products as part of the documentation.

Installation guides for the latest Intel® Parallel Studio XE version are also available online. Please check Intel® Parallel Studio XE getting started page for installation guides. Note that link to Installation Guide is also available on Intel® Registration Center while downloading required installation package. Please refer to Installation FAQ for more details.

How to use the Intel® Fortran Compiler for Windows*

Intel® Parallel Studio XE 2020: Getting Started with the Intel® Fortran Compiler for Windows* at <install-dir>\IntelSWTools\documentation_2020\en\compiler_f\ps2020\getstart_wf.htm contains information on how to use the Intel® Fortran Compiler for Windows* from the command line and from Microsoft Visual Studio*.

This article explains which version of Microsoft Visual Studio is supported by Intel Fortran Compiler release.

Back to top

Documentation

Product documentation is linked from<install-dir>\IntelSWTools\documentation_2020\en\compiler_f\ps2020\getstart_wf.htm.

Offline Core Documentation Removed from the Installed Image

Offline core documentation is removed from the Intel® Parallel Studio XE installed image. The core documentation for the components of Intel® Parallel Studio XE are available at the Intel® Software Documentation Library for viewing online. You may also access the documentation online by following the links from the Getting Started Guide, which can be viewed from the help menu.

Please use the instructions from this article to add Intel® Compiler documentation to your local machine.

User and Reference Guides, What's New and Release Notes, Installation Guides

Refer to the Intel® Parallel Studio XE Support – Documentation for additional User and Reference Guides, What’s New and Release Notes, and Installation Guides.

Documentation on Creating Windows-based Applications on the Web

Documentation on using QuickWin, dialogs and the Windows API is available from the Intel Software Documentation Library: See Using Intel® Fortran Compiler for Windows* to Create and Build Windows*-based Applications (PDF)

Documentation Viewing Issue with Microsoft Edge* and Japanese Version of Microsoft Windows 10*

When viewing Intel compiler documentation with the Microsoft Edge* browser on a Japanese version of Microsoft Windows 10*, the upper left corner [Content][Index][Search] buttons do not function properly. Clicking on any of the buttons results in a blank screen.

The issue will be fixed in a future release. To workaround the issue, use Internet Explorer to view the Intel compiler documentation. To set your default browser to Internet Explorer, Google search "how to make Internet Explorer default browser on Windows 10".

Multi-pane documents do not display correctly in the Visual Studio* internal browser

The Visual Studio* internal browser default mode may cause multi-pane documents to not display correctly. The table of contents appears in the left pane, but the right pane does not display any content. The alternative is to access the same documentation from the Visual Studio* Help menu.

Back to top

Intel-provided Debug Solutions

Intel®-provided debug solutions are based GNU* GDB. Please see Intel® Parallel Studio 2020 Composer Edition Fortran - Debug Solutions Release Notes for further information.

Back to top

Japanese Language Support

Japanese language support is provided with this release of the product.

Back to top

Samples

Product samples are now available online at Intel® Software Product Samples and Tutorials.

Back to top

Redistributable Libraries

Refer to the Redistributable Libraries for Intel® Parallel Studio XE for more information.

Back to top

Technical Support

If you did not register your compiler during installation, please do so at the Intel® Software Development Products Registration Center. Registration entitles you to free technical support, product updates and upgrades for the duration of the support term.

For information about how to find Technical Support, Product Updates, User Forums, FAQs, tips and tricks, and other support information, please visit http://www.intel.com/software/products/support/

Note: If your distributor provides technical support for this product, please contact them for support rather than Intel.

Back to top

Compatibility

In general, object code and modules compiled with earlier versions of Intel Fortran Compiler (8.0 and later) may be used in a build with version 19.1. Exceptions include:

  • Sources that use the CLASS keyword to declare polymorphic variables and which were built with a compiler version earlier than 12.0 must be recompiled.
  • Objects built with the multi-file interprocedural optimization (/Qipo) option must be recompiled.
  • Objects that use the REAL(16) , REAL*16, COMPLEX(16) or COMPLEX*32 datatypes and which were compiled with versions earlier than 12.0 must be recompiled.
  • Objects built for the Intel® 64 architecture with a compiler version earlier than 10.0 and that have module variables must be recompiled. If non-Fortran sources reference these variables, the external names may need to be changed to remove an incorrect leading underscore.
  • Modules that specified an ATTRIBUTES ALIGN directive outside of a derived type declaration and were compiled with versions earlier than 11.0 must be recompiled. The compiler will notify you if this issue is encountered.
  • Modules that specified an ATTRIBUTES ALIGN directive inside a derived type declaration cannot be used by compilers older than 13.0.1.
  • The implementation of the Fortran 2008 submodules feature required extensive changes to the internal format of binary .mod files. Therefore module files created by the version 16.0 Fortran compiler cannot be used with version 15.0 or older Fortran compilers.
  • Objects built with Intel Fortran Compiler version 18.0 and earlier version of regcall calling convention must be recompiled with 19.0 or newer. Intel library libirng uses regcall. Version of this library shipped with 19.0 compiler version or newer is not compatible with older versions. regcall is implicitly used by following attribute:
    !DIR$ ATTRIBUTES [att,] VECTOR [:clause] [, att]... :: routine-name

Stack Alignment Change for REAL(16) and COMPLEX(16) Datatypes (12.0)

In previous releases, when a REAL(16) or COMPLEX(16) (REAL*16 or COMPLEX*32) item was passed by value, the stack address was aligned at 4 bytes. For improved performance, compiler versions 12.0 and later align such items at 16 bytes and expect received arguments to be aligned on 16-byte boundaries.

This change primarily affects compiler-generated calls to library routines that do computations on REAL(16) values, including intrinsics. If you have code compiled with earlier versions and link it with the version 13 libraries, or have an application linked to the shared version of the Intel run-time libraries, it may give incorrect results.

In order to avoid errors, you must recompile all Fortran sources that use the REAL(16) and COMPLEX(16) datatypes.

Static Form of the Intel® OpenMP* Library is No Longer Provided

The static form of the Intel® OpenMP* library, libiomp5mt.lib, is no longer provided, and the /Qopenmp-link:static command line option is no longer supported. Please replace all references to libiomp5mt.lib with libiomp5md.lib, the DLL import library. This change also implies that applications using OpenMP will need to have the Intel® compiler redistributables installed if deployed on a system where an Intel® compiler is not also present. See Redistributable Libraries for Intel® Parallel Studio XE for more information.

Fortran Expression Evaluator

Fortran Expression Evaluator (FEE) is a plug-in for Microsoft Visual Studio* that is installed with Intel® Fortran Compiler. It extends the standard debugger in Microsoft Visual Studio* IDE by handling Fortran expressions. There is no other change in usability.

Back to top

New and Changed Compiler Features

New features from Fortran 2018

  • Enhancements to the IMPLICIT statement allow specifying that all external procedures must declared EXTERNAL
  • Enhancements to the GENERIC statement permit it to be used to declare generic interfaces
  • The locality of variables may now be specified on a DO CONCURRENT statement
  • Enhancements to edit descriptor forms E, D, EN, ES, and G allow a field width of zero, analogous to the F edit descriptor
  • The exponent width e in a data edit descriptor may now be zero, analogous to a field width of zero
  • The RN edit descriptor now rounds to nearest as specified by Fortran 2018 and ISO/IEC/IEEE 60559:2011
  • The EX edit descriptor allows for hexadecimal format output of floating point values. Hexadecimal format floating point values are allowed on input.
  • SIZE= may be specified for non-advancing I/O
  • The values for SIZE= and POS= in an INQUIRE statement for pending asynchronous operations have been standardized
  • The value assigned to the RECL= specifier in an INQUIRE statement now has standardized values
  • A new form of the intrinsic function CMPLX does not require the KIND= keyword if the first argument is type COMPLEX
  • The arguments to the SIGN function may be of different kinds
  • INTEGER and LOGICAL arguments to intrinsic procedures are no longer required to be of default kind
  • The named constants STAT_FAILED_IMAGE and STAT_UNLOCKED_FAILED_IMAGE have been defined in the intrinsic
    ISO_FORTRAN_ENV module
  • The non-block DO statement and the arithmetic IF statement are now deleted in Fortran 2018. Intel® Fortran fully supports features deleted in the FORTRAN standard
  • COMMON, EQUIVALENCE and BLOCKDATA statements are now obsolescent
  • The labeled form of DO loops is now obsolescent
  • Locality of variables in DO CONCURRENT constructs can now be declared on the DO CONCURRENT statement
  • Specific names of intrinsic procedures are now obsolescent
  • FAIL IMAGE statement allows debugging recovery code for failed images without having to wait for an actual image failure
  • The named constants STAT_FAILED_IMAGE and STAT_UNLOCKED_FAILED_IMAGE have been defined in the intrinsic
    ISO_FORTRAN_ENV module
  • An optional argument STAT= has been added to ATOMIC_REF and ATOMIC_DEFINE intrinsic procedures
  • Optional STAT= and ERRMSG= specifiers have been added to the MOVE_ALLOC intrinsic procedure, to image selectors, and to the CRITICAL statement and construct
  • Atomic subroutines ATOMIC_ADD, ATOMIC_AND, ATOMIC_CAS, ATOMIC_FETCH_ADD, ATOMIC_FETCH_AND, ATOMIC_FETCH_OR, ATOMIC_FETCH_XOR, ATOMIC_OR, and ATOMIC_XOR have been implemented
  • Collective subroutines CO_BROADCAST, CO_MAX, CO_MIN, CO_REDUCE, and CO_SUM have been implemented
  • The SELECT RANK construct has been implemented allowing manipulation of assumed rank dummy arguments
  • The compiler will now diagnose the use of nonstandard intrinsic procedures and modules as required by Fortran 2018
  • Transformational intrinsic functions from the intrinsic modules ISO_C_BINDING, IEEE_ARITHMETIC, and IEEE_EXCEPTIONS are now allowed in specification expressions
  • You can now specify the optional argument RADIX for the IEEE_GET_ROUNDING_MODE and IEEE_SET_ROUNDING_MODE intrinsic module procedures
  • The optional ROUND argument has been added to the IEEE_RINT function in the intrinsic module IEEE_ARITHMETIC
  • The intrinsic module IEEE_ARITHMETIC now includes the functions IEEE_FMA, IEEE_SIGN_BIT, IEEE_NEXT_UP and IEEE_NEXT_DOWN
  • The intrinsic module procedures IEEE_MAX, IEEE_MIN, IEEE_MAX_MAG, and IEEE_MIN_MAG have been implemented
  • The intrinsic module procedures IEEE_INT and IEEE_REAL have been implemented
  • The intrinsic module IEEE_EXCEPTIONS now contains a new derived type, IEEE_MODES_TYPE, which can be used to save and restore the IEEE_MODES using the IEEE_GET_MODES and the IEEE_SET_MODES intrinsic module procedures
  • A new rounding mode, IEEE_AWAY has been added
  • SUBNORMAL is now synonymous with DENORMAL
  • IEEE_QUIET_EQ, IEEE_QUIET_NE, IEEE_QUIET_LT, IEEE_QUIET_LE, IEEE_QUIET_GT, IEEE_QUIET_GE, IEEE_SIGNALING_EQ, IEEE_SIGNALING_NE, IEEE_SIGNALING_GT, IEEE_SIGNALING_GE, IEEE_SIGNALING_LT, and IEEE_SIGNALING_LE intrinsic module procedures have been implemented

New features from OpenMP 5.0*

  • IF clause on SIMD directive
  • NONTEMPORAL clause on SIMD directive
  • Inclusive/exclusive scan operations in SIMD and TARGET SIMD constructs.

Changed compiler behavior

  • Previous compiler versions erroneously permitted a PRIVATE or SEQUENCE statement to appear prior to the declaration of any type parameters in a derived type declaration. Intel® Fortran Compiler 19.1 no longer permits this behavior.
  • The INQUIRE statement now uses the realpath() function with argument ’/’’GetFullPathNameA’ and uses the resulting canonicallized file-paths if the calls succeeds. An example of the change is:
    Open file as “bar/foo”.
    Before:
    Inquire whether “./bar/foo”, “bar//foo” or “bar/../bar/foo” is open – it is not.
    After:
    Inquire whether “./bar/foo”, “bar//foo” or “bar/../bar/foo” is open – it is.
  • In 19.0 compiler version, all procedures with the exception of C_F_POINTER from the intrinsic module ISO_C_BINDING were made PURE per the Fortran 2018 standard. Interpretation 18/007 declared that making C_F_PROCPOINTER PURE was a mistake. 19.1 complies with this interpretation and makes C_F_PROCPOINTER IMPURE.

Back to top

New and Changed Compiler Options

Please refer to the compiler documentation for details. Following new compiler options added:

For a list of deprecated compiler options, see the Compiler Options section of the documentation.

/assume:[no]old_inquire_recl

Determines the value of the RECL= specifier on an INQUIRE statement for an unconnected unit or a unit connected for stream access.

/assume:[no]old_ldout_zero

Determines the format of a floating-point zero produced by list-directed output. old_ldout_zero uses exponential format, no_old_ldout_zero uses fractional format.

/check:[no]udio_iostat

Determines whether standard conformance checking occurs when user defined derived type input/output procedures are executed.

/warn:[no]externals

Determines whether warnings occur for any dummy procedures or procedure calls that have on explicit interface or have not been declared EXTERNAL.

/m[no-]branches-within-32B-boundaries

This option is supported in versions 19.0 update 8 of the compiler and above. The details about this option can be found in the Intel® Fortran Compiler 19.1 Developer Guide and Reference. To find more information, see https://www.intel.com/content/dam/support/us/en/documents/processors/mitigations-jump-conditional-code-erratum.pdf

 
 

Back to top

Visual Studio Integration Changes

Changes in Online Help format in Microsoft Visual Studio*

The online help format is now browser-based. When you view Intel documentation from the Microsoft Visual Studio Help menu, or when you view context-sensitive help using F1 or a help button in a dialog box or other GUI element, your default browser shows the corresponding help topic. You may encounter some minor functionality issues depending on your default browser. Known issues include:

  • When Set Help Preference is set to Launch in Browser and you hit F1 in Tools>Options>F# Tools or Tools>Options>IntelliTrace, the browser appears twice.
  • Chrome*: When arriving at a topic from Search or Index, the Table of Contents (TOC) does not sync, nor does the Sync TOC link work.
  • Firefox*: The TOC loses context easily. Search is case sensitive
  • Safari*: Response on Windows is slow.

Back to top

Support Deprecated

The compiler option /stand:f15 will be removed in next update. Use /stand:f18 instead.

Support Removed

Microsoft Visual Studio 2013* and Microsoft Visual Studio 2015* support removed

Microsoft Visual Studio 2013* and Microsoft Visual Studio 2015* are not supported with Intel® Fortran Compiler 19.1.

Microsoft Windows 7*, Windows Server 2008 R2 SP1*, Windows Server 2012* are not supported

Microsoft Windows 7*, Windows Server 2008 R2 SP1*, Windows Server 2012* are not supported with Intel® Fortran Compiler for Windows* 19.1.

Loop Profiler

The Loop Profiler feature is removed in Intel® Fortran Compiler for Windows* 19.1. The following compiler options related to Loop Profiler are removed: /Qprofile-loops:keyword, /Qprofile-loops-report=value, /Qprofile-functions, /Qguide-profile

Microsoft Visual Studio Shell*

Microsoft* has announced the stand-alone Microsoft Visual Studio Shell* will not be available for Visual Studio 2017. As such, we are no longer providing a stand-alone shell. An integrated shell is available as part of the full Microsoft Visual Studio bundle. Please refer to https://visualstudio.microsoft.com/vs/ for further information on the Microsoft Visual Studio product offerings.

Please refer to the Intel Developer Zone article for more details.

IA-32 host installation is not supported

Support for installation on IA-32 hosts was removed in Intel® Parallel Studio XE 2018.

Intel® Xeon Phi™ x100 product family coprocessor (formerly code name Knights Corner) is not supported

The Intel® Xeon Phi™ x100 product family coprocessor (formerly code name Knights Corner) was officially announced end of life in January 2017. As part of the end of life process, the support for this family will only be available in the Intel® Parallel Studio XE 2017 version. Intel® Parallel Studio XE 2017 will be supported for a period of 3 years ending in January 2020 for the Intel® Xeon Phi™ x100 product family. Support will be provided for those customers with active support.

Back to top

Known Issues

Warning message when running psxevars.bat from Command Prompt.

When running the psxevars.bat script from the Command Prompt to set the compiler environment you will get a warning or error message. This message can be ignored – your environment will work properly after running psxevars.bat. Just ignore the warning messages about “The system cannot find the file specified.”

Ignore it and continue to use the Command Prompt.

Command-Line Diagnostic Issue for Filenames with Japanese Characters

The filename in compiler diagnostics for filenames containing Japanese characters may be displayed incorrectly when compiled within a Windows command shell using the native Intel® 64 architecture compiler. It is not a problem when using Visual Studio or when using the Intel® 64 architecture cross-compiler.

Debugging mixed language programs with Fortran does not work

To enable debugging Fortran code called from a .NET managed code application in Visual Studio 2012 or later, unset the following configuration:

Menu Tools ->Options, under section Debugging->General, clear the Managed C++ Compatibility Mode check box

For any managed code application, one must also check the project property Debug > Enable unmanaged code debugging.

Internal Compiler Error(s) involving PARAMETER constants and /debug-parameters /debug Compiler options

The use of PARAMETER constants along with the /debug-parameter and /debug options may cause an internal compiler error.

The following example demonstrates usage that triggers an internal error:

module sample_mod
    implicit none
    integer, parameter :: isize=32  
    
    contains

    subroutine example1 
        call example2(isize)
    end subroutine example1 

    subroutine example2(jsize)
        integer, intent(in) :: jsize
        write(*,*) jsize
    end subroutine example2

end module sample_mod

It is possible to experience several internal errors during a build attempt for the Debug configuration under Visual Studio where it is common to have /debug-parameter and /debug options enabled simultaneously.

You can work-around the defect by either:

  1. Under Visual Studio, disabling the /debug-parameters option under: Properties > Fortran > Debugging > Information for PARAMETER Constants set to None
  2. Under Visual Studio, using only minimal /debug information (i.e. Properties > Fortran > Debugging > Information set to Line Numbers Only) with any setting for /debug-parameters (see the property setting in #1 above).
  3. On the compiler command-line, removing all occurrences of the /debug-parameters from compiler command-line or within application build scripts when using /debug:full
  4. On the compiler command-line, using /debug:minimal with any setting for /debug-parameters on the compiler command-line or within application build scripts.

Coarray Fortran 32-bit doesn't work on 64-bit Microsoft* Windows

Coarray Fortran 32-bit doesn't work on Microsoft* Windows 10 or Microsoft* Windows Server 2012 R2 (only on 64-bit OS) due to required utilities “mpiexec.exe” and “smpd.exe” not working properly. It is a compatibility issue. Please refer to
Coarray Fortran 32-bit doesn't work on 64-bit Microsoft* Windows for more details.

Fortran Coarray Application Hang After Executing FAIL IMAGE

The current FAIL IMAGE implementation has a known issue that manifests after the FAIL IMAGE statement is executed. Please refer to the article for more details.

If you use a FAIL IMAGE statement to make an image fail, you should use a STAT= specifier or a STAT argument in all coarray operations that might encounter that failed image if the statement or operation permits, or you should specify either the assume failed_images or standard-semantics compiler option. If you do not use a STAT= specifier, a STAT argument, or specify one of the compiler options, those operations will not check for failed images. They may then try to coordinate with the failed image, waiting for a response from it. The response would never happen and so the application would hang.

The following example demonstrates using the STAT= specifier to prevent an application hang.

SUBROUTINE FAIL_AND_SYNC ( THIS_ONE )
   INTEGER THIS_ONE
   INTEGER MY_STAT
   IF (THIS_IMAGE() .EQ. THIS_ONE) THEN
       FAIL IMAGE
   END IF
   SYNC ALL (STAT=MY_STAT)      ! Would hang without STAT=
END SUBROUTINE FAIL_AND_SYNC

Back to top

Microsoft Visual Studio 2017 Notes

Configuring Microsoft Visual C++ to Reference Intel® Fortran Run-Time Libraries

  1. In Visual Studio, with a solution open that contains a C++ project, select View > Property Manager. If you do not see Property Manager under the View menu, you will find it under View > Additional Windows. The Property Manager window will appear. Note that this is not Properties Window or Properties Pages.
  2. Click on the triangles or + signs to expand the property tree under the Debug|Win32 configuration
  3. Double click on Microsoft.Cpp.Win32.user
  4. Select VC++ Directories
  5. Click in the field to the right of "Library Directories"
  6. Click the triangle that appears to the right and select <Edit...>
  7. Click the New Line button or press Ctrl-Insert
  8. In the new field that appears, type:

    $(IFORT_COMPILER19)\compiler\lib\ia32
  9. Click OK, OK
  10. In the Visual Studio toolbar, select File > Save All

If you will be building Intel® 64 (x64) configurations:

  1. Back in the Property Manager, expand the Debug|x64 configuration
  2. Double click on Microsoft.Cpp.x64.user
  3. Select VC++ Directories
  4. Click in the field to the right of "Library Directories"
  5. Click the triangle that appears to the right and select <Edit...>
  6. Click the New Line button or press Ctrl-Insert
  7. In the new field that appears, type:

    $(IFORT_COMPILER19)\compiler\lib\intel64
  8. Click OK, OK
  9. In the Visual Studio toolbar, select File > Save All

Click on the Solution Explorer tab, or press Ctrl-Alt-L, to make it visible again.

If you do not see the Microsoft.Cpp.x64.user property page listed for the x64 configuration, right click on Debug|x64 and select Add Existing property Sheet. Browse to the location which contains the MsBuild 4.0 property pages.

On Windows 10, it is typically:

C:\Users\<username>\AppData\Local\Microsoft\MSBuild\v4.0

You may need to enable viewing of hidden files and folders to see these paths.

Select Microsoft.Cpp.x64.user.props and click Open. Now follow the steps above.

Adjusting Project Dependencies

If you are converting a project from an earlier version of Visual Studio and had established Project Dependencies, these are converted to References by Visual Studio 2017. A Fortran project that is referenced by a C/C++ project will prevent the C/C++ project from building, with an MSB4075 error. To solve this:

  1. Right click on the C/C++ project and select References.
  2. If any Fortran project is shown as a reference, click Remove Reference. Repeat this for all Fortran projects shown as a reference. Click OK.
  3. Repeat the above steps for any other C/C++ project

Now you have to reestablish project dependencies.

  1. Right click on the C/C++ project and select Project Dependencies.
  2. Check the box for each project that is a dependent of this project.
  3. Click OK.
  4. Repeat the above steps for any other C/C++ project that has dependencies.

"No apps are installed to open this type of link (file)" when viewing Parallel Studio XE documentation under Microsoft Visual Studio* IDE

When no browser is registered as the handler for .htm* files, viewing documentation under the IDE via Help > Intel Compilers and Libraries can result in an error popup indicating "No apps are installed to open this type of link (file)".

To resolve this issue, select the preferred browser for the file type .htm under either Control Panel > View by: large (or small) icons > Default programs > Associate a file type or protocol with a program / Set your default programs -or- Settings > System > Default Apps > Choose Default Apps by File type.

Intel® Fortran Compiler for Windows* integration to Visual Studio 2017* issues

There are different integration issues observed with Microsoft* Visual Studio 2017. Problems are intermittent and not reproducible on every system. Please refer to Intel® Software Development Tools Integration to Microsoft* Visual Studio 2017 Issues for details.

Empty class view of Fortran Project

User can encounter the issue with empty class view of Fortran Project. The workaround is to manually delete all existing intermediate files (.fdz and others) and ensure that following setting are enabled in Tools ->Options -> Text Editor -> Fortran ->Advanced:

  • “Collect Call/Callers graph information” and “Collect Object Browser information” are set to True.
  • “Disable Database” is set to False.

Fortran Debugger in Microsoft* Visual Studio 2017 issues

When debugging a Fortran program Microsoft* Visual Studio 2017 version 15.7.x or version 15.8.x crashes. In addition there is another issue that Fortran array values are not visible at a breakpoint. Please find this article for more details.

Back to top

Fortran 2008 and Fortran 2018 Feature Summary

The Intel® Fortran Compiler supports full Fortran 2008 standard and most features from the Fortran 2018 standard. New Fortran 2018 features supported by the current version are listed in the 'New features from Fortran 2018' section.

Please refer to the Fortran 2008 Standard (PDF) and the Fortran 2018 Standard (PDF) if necessary.

Back to top

Disclaimer and Legal Information

INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL(R) PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. UNLESS OTHERWISE AGREED IN WRITING BY INTEL, THE INTEL PRODUCTS ARE NOT DESIGNED NOR INTENDED FOR ANY APPLICATION IN WHICH THE FAILURE OF THE INTEL PRODUCT COULD CREATE A SITUATION WHERE PERSONAL INJURY OR DEATH MAY OCCUR.

Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this information.

The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request.

Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.

Copies of documents which have an order number and are referenced in this document, or other Intel literature, may be obtained by calling 1-800-548-4725, or go to: http://www.intel.com/design/literature.htm

Intel processor numbers are not a measure of performance. Processor numbers differentiate features within each processor family, not across different processor families. Go to:

http://www.intel.com/products/processor%5Fnumber/

The Intel® Fortran Compiler is provided under Intel’s End User License Agreement (EULA).

Please consult the licenses included in the distribution for details.

Intel, the Intel logo, the Intel Inside logo, Xeon, and Intel Xeon Phi are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or other countries.

* Other names and brands may be claimed as the property of others.

© Intel Corporation. All Rights Reserved.

Back to top