Intel® Parallel Studio XE

Enum members are not visible to template specialization

I have a code example which originates from llvm source code but modified to clearly provide the issue.

It compiles fine with clang but fails with icl. Here's the code:

#include <type_traits>

template <typename E, typename Enable = void>
struct is_valid : std::false_type {};

template <typename E>
struct is_valid<E, typename std::enable_if<sizeof(E::EnumMember) >= 0>::type> : std::true_type {};

Make intent in array be global

I wonder how to make the array `array1` be global (module) variable, consider following code

module data
    implicit none
    real(8), allocatable, dimension(:,:) :: A
end module data

subroutine test(array1, n, m)
    use data
    implicit none
    integer, intent(in) :: n, m
    real(8), intent(in), dimension(n,m) :: array1
    allocate(A, source=array1)
end subroutine test

`allocate(A, source=array1)` works but double store the same array, `save` is another method but not satisfied.

ALLOCATABLE ARRAY - Difference between ifort and gfortran?

Hello, I have development issues whether on which computers I'm running my code. My two kind of computer are :
-    Computing Center (Intel Fortran, version compiler is
-    Local Debian (GNU Fortran version is 4.9.2 (Debian 4.9.2-10) of 2014)
My code developed under gfortran is not executable under IFORT, and I would like to know the origin of this problem:
- Is this due to a standard Fortran problem (F90? F95? F2003? F2008?)
- Is it due to differences between Ifort and Gfortran standards?

question about pointers and allocate

A code I'm working on has the following:

real(8), pointer :: arr(:)

allocate( arr(100) )

if( allocated(arr) ) then

and the compiler says Error 1  error #6547: The ARRAY argument of the ALLOCATED inquiry intrinsic function shall be an allocatable array.

Why can arr be allocated, but then not checked with allocated()?  The compiler doesn't complain about deallocate(arr).

Is there a good reason why the person who wrote this code declared arr as a pointer instead of real(8), allocatable :: arr ?

Which version of Intel Fortran Compiler to be used with ASPEN PLUS V10

Hello everyone,

I am a doctoral student and I am working with ASPEN PLUS V10. Now I have to use an Intel Fortran Compiler and link it with the ASPEN PLUS V10 for a custom User model operation. Can you please help me and tell which version of the Intel Fortran Compiler is compatible?

Thanks a lot

Slow pow function in Intel Parallel Studio XE 2017


we recently changed from Intel Composer 2011 to Intel Parallel Studio 2017. We noticed a severe slow down (factor of 100) in the  ** operator (i.e., pow function) in our fortran code base. It seems to be more or less insensitive to the optimization flags used.

I would be very grateful if someone could provide a work around (flags, etc.) to avoid this problem. This slowdown took us by surprise as you would expect the newer compiler to be faster.

compiler flags for release with debug symbols

I am building a python extension that has to be supported on python 2.7 with f2py using the intel fortran compiler 2013, the latest I can use and still get the compatibility I need with vs 2008.

My extension has a long history, but following a batch of changes now crashes python. I thought the first step would be to get some symbols or at least some line numbers and maybe check bounds. So I'm trying to create a "release with debug info" compile. However, when I recompile the static library with these changes, the bug goes away:

Subscribe to Intel® Parallel Studio XE