Quantcast
Channel: Intel® Software - Intel® C++ Compiler
Viewing all 2797 articles
Browse latest View live

Access violation or stack overflow Please contact Intel Support for assistance

$
0
0

Hello Intel Support I am contacting you for assistance.

Your Update 2 compiler crashes on a file that previously compiled fine (with Update 1).

The file is compiled with OpenMP and TBB.

Here is the command:

icpc -O2 -axCORE-AVX2 -qopenmp -o biotest -g -std=c++11 -I ../openmp ../openmp/patternmatch.cpp biotest.cpp -ltbb

Source code attached.

 :-| 

 

 

AttachmentSize
Downloadapplication/x-gzipbrokencompiler.tar.gz2.93 KB

ICL can't deduce variable type when a variable is declared using a placeholder type (auto) [bug since C++17]

$
0
0

Intel C++ compiler 16 fails when compiles one of the following code:

int foo = 3;
auto boo {foo};
foo = boo + 1;

or

int foo;
auto boo {4};
foo = boo + 1;

ICL considers code ill-formed because:

error : no operator "+" matches these operands
        operand types are: std::initializer_list<int> + int
     foo = boo + 1;
               ^

Therefore it deduces type of `boo` to `std::initializer_list<int>`. This violates '7.1.6.4 auto specifier [dcl.spec.auto]':

7 When a variable declared using a placeholder type is initialized, or a return statement occurs in a function
declared with a return type that contains a placeholder type, the deduced return type or variable type is
determined from the type of its initializer. In the case of a return with no operand or with an operand of
type void, the declared return type shall be auto and the deduced return type is void. Otherwise, let T be
the declared type of the variable or return type of the function. If the placeholder is the auto type-specifier,
the deduced type is determined using the rules for template argument deduction. If the initialization is
direct-list-initialization then the braced-init-list shall contain only a single assignment-expression L.
If the
deduction is for a return statement and the initializer is a braced-init-list (8.5.4), the program is ill-formed.
Otherwise, obtain P from T by replacing the occurrences of auto with either a new invented type template
parameter U or, if the initialization is copy-list-initialization, with std::initializer_list<U>. Deduce
a value for U using the rules of template argument deduction from a function call (14.8.2.1), where P is
a function template parameter type and the corresponding argument is the initializer, or L in the case of
direct-list-initialization
. If the deduction fails, the declaration is ill-formed. Otherwise, the type deduced for
the variable or return type is obtained by substituting the deduced U into P. [Example:

...

auto x5{ 3 }; // decltype(x5) is int
—end example ]

This becomes true since C++17, I believe. And for a compiler that doesn't support it, the behavior with code from above is OK. `boo` is `std::initializer_list<int>` in such case.

Question about thread number on 2CPU

$
0
0

Hi, I need some help....

.

I've developed a application to work on image.

.

There are so many object to inspect, So we are testing on workstation platform with 2CPU(Xeon E5).

.

I have 32 Thread(each CPU has 8Core and 16 Thread), But Openmp Works only Half Side.

.

I set '32' thread using omp_set_thread_num function, but It works only 16thread.

.

What should i do to solve this problem?

.

The O/S : Windows Server 2008

Ram : 16GB

Intel C++ compiler stops emit warnings when unsupported `/Gw` switch is specified [bug, ICL 16.0]

$
0
0

`/Gw` switch (optimize global data) is used by MSFT VC++ compiler to package global data in individual COMDAT sections. This switch is not supported by ICL 16.0.

However, `/Gw` can force ICL not to warn about possible issues. For example:

icl /Qstd=c++11 /Qstd=c++14 sample.cpp

causes the following warning:

icl: command line warning #10121: overriding '/Qstd=c++11' with '/Qstd=c++14'

(code in ‘sample.cpp’ doesn’t matter)

But this command:

icl /Gw /Qstd=c++11 /Qstd=c++14 sample.cpp

causes no warnings at all – compilation completes successfully. There's even no message that `/Gw` ain't supported by ICL.

Position of `/Gw` in command line doesn’t matter:

icl /Qstd=c++11 /Qstd=c++14 /Gw sample.cpp

also shows no error.

GNULIB compilation error with Intel 2016.1.150 and 2016.2.181

$
0
0

Dear All,

I am trying to use and compile GNUlib libraries using the above mentioned compilers (actually, I am trying to comple Octave, but the problem is related to GNULIB.)

Meanwhile I am able to compile with the 2015 compilers, the 2016 compilers give the following error 

make[3]: Entering directory `/tmp/hajgato/build/Octave/4.0.0/intel-2016a/octave-4.0.0/liboctave' 
CXX array/array_libarray_la-Array-b.lo 
icpc: command line warning #10006: ignoring unknown option '-Wold-style-cast' 
icpc: command line warning #10006: ignoring unknown option '-Wcast-align' 
In file included from /usr/include/sys/types.h(220), 
from ../libgnu/sys/types.h(28), 
from /usr/include/stdlib.h(320), 
from ../libgnu/stdlib.h(36), 
from /vsc/apps/brussel/ivybridge/software/GCCcore/4.9.3/bin/../include/c++/4.9.3/cstdlib(72), 
from /vsc/apps/brussel/ivybridge/software/GCCcore/4.9.3/bin/../include/c++/4.9.3/bits/stl_algo.h(59), 
from /vsc/apps/brussel/ivybridge/software/GCCcore/4.9.3/bin/../include/c++/4.9.3/algorithm(62), 
from array/Array.h(32), 
from array/Array-b.cc(29): 
../libgnu/sys/select.h(598): error: declaration is incompatible with previous "select" (declared at line 109 of "/usr/include/sys/select.h") 
_GL_CXXALIAS_SYS (select, int, 

compilation aborted for array/Array-b.cc (code 2) 
make[3]: *** [array/array_libarray_la-Array-b.lo] Error 1 
make[3]: Leaving directory `/tmp/hajgato/build/Octave/4.0.0/intel-2016a/octave-4.0.0/liboctave' 
make[2]: *** [all] Error 2 
make[2]: Leaving directory `/tmp/hajgato/build/Octave/4.0.0/intel-2016a/octave-4.0.0/liboctave' 
make[1]: *** [all-recursive] Error 1 
make[1]: Leaving directory `/tmp/hajgato/build/Octave/4.0.0/intel-2016a/octave-4.0.0' 
make: *** [all] Error 2 

 The part of the header files where the problem is (after preporcessing):

./libgnu/sys/select.h:

./libgnu/sys/select.h(599): error: declaration is incompatible with previous "select" (declared at line 109 of "/usr/include/sys/select.h")

namespace gnulib { static int (*select) (int, fd_set *, fd_set *, fd_set *, struct timeval *) = ::select; } extern "C" int _gl_cxxalias_dummy;
                               ^
compilation aborted for pp.c (code 2)​

/usr/include/sys/select.h:

extern "C" {









extern int select (int __nfds, fd_set *__restrict __readfds,
		   fd_set *__restrict __writefds,
		   fd_set *__restrict __exceptfds,
		   struct timeval *__restrict __timeout);








extern int pselect (int __nfds, fd_set *__restrict __readfds,
		    fd_set *__restrict __writefds,
		    fd_set *__restrict __exceptfds,
		    const struct timespec *__restrict __timeout,
		    const __sigset_t *__restrict __sigmask);


}

(line 109 starts with extern int select .....

Is this a bug in the 2016 version of intel compilers or some standard were more precisely implemented? Again version 2015 compilers do not have this error, the code compiles without any problems.

There is a small testporgram (submitted on the Octave bug forum): http://savannah.gnu.org/bugs/index.php?47373

 

 

Building MCMCpack with Intel C++ Compiler

$
0
0

Hello,

 

 

 

I'm trying to build the MCMCpack (version 1.3-4) R package using the Intel C++ compiler (16.0.1 on Scientific Linux 6.5). I have already built R 3.2.3 and many packages using the compiler suite of the same version, but have been unable to get MCMCpack built. R was built using the options suggested at https://software.intel.com/en-us/articles/build-r-301-with-intel-c-compiler-and-intel-mkl-on-linux and https://software.intel.com/en-us/articles/using-intel-mkl-with-r. I get the following error numerous times with only the first line number given changing:

/grid/software/intel/2016/compilers_and_libraries_2016.1.150/linux/compiler/include/complex(305): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible
          return __x._M_value / __y;
                     ^

In file included from ide.h(93),
                 from distributions.h(98),
                 from rng.h(50),
                 from mersenne.h(76),
                 from MCMCrng.h(29),
                 from HMMmultivariateGaussian.cc(22):

The package compiles without error using GCC 4.9.1.

Any help is much appreciated.

 

error LNK2001: unresolved external symbol "...::`vftable'"

$
0
0

Hi, everyone,

Got error while building ICU library (icu-project.org) using Intel C++ Compiler:

2>     Creating library ..\..\lib64\icuind.lib and object ..\..\lib64\icuind.exp
2>quant.obj : error LNK2001: unresolved external symbol "const icu_56::UnicodeMatcher::`vftable'" (??_7UnicodeMatcher@icu_56@@6B@)
2>strmatch.obj : error LNK2001: unresolved external symbol "const icu_56::UnicodeMatcher::`vftable'" (??_7UnicodeMatcher@icu_56@@6B@)
2>..\..\bin64\icuin56d.dll : fatal error LNK1120: 1 unresolved externals

(logs added in attachment).

Environment:
- Windows 10,
- Visual Studio 2015 Update 1 with integrated Intel Parallel Studio XE 2016 Update 1,
- ICU-56.1 sources (http://download.icu-project.org/files/icu4c/56.1/icu4c-56_1-src.zip).

Steps to reproduce error:
- extract ICU sources from zip archive,
- open solution '<ICU sources>\source\allinone\allinone.sln', convert it to current version of Visual Studio, select Intel Compiler toolchain,
- select *Debug* configuration and any platform,
- build project 'i18n', which reproduce error LNK2001 in build log.

Remarks:
- error inherent to Debug+<x86,x64> configurations only,
- error reproduces for few other libraries, e.g. Qt-5.7-alpha1 (https://bugreports.qt.io/browse/QTBUG-48062 ; for shared+debug builds only),
- error doesn't reproduce for MSVC builds.
 

Regards,

Alexander

 

Code coverage using multiple Projects in a Solution

$
0
0

I'm using Intel Parallel Studio XE 2015 Composer Edition C++ on Windows and MS Visual Studio 2010.

I have a Visual Studio Solution with several Projects. I added /Qcov-gen to several projects which resulted in several .spi files be generated at compile-time, one for each project.

When I run codecov.exe (using the command-line), I have to specify one .spi file and codecov.exe generates a report that covers only the source files in the project that corresponds to the .spi file I specified.

My question is: how can I generate a code coverage report that includes the source files of several of my projects in my solution?

Thank you in advance!


JITDLL version is older than ISA version

$
0
0

I'm using Visual Studio 2015, parallel studio xe 2016. I'm on a 64-bit Windows 10 box. I'm both compiling and attempting to run on the same box. 

I've been trying for a few hours now to get some stuff to run GPU offloading, but I'm up against a wall with this error. Specifically it says: 

"GFX(16:19:53): FATAL ERROR: error #-35: JITDLL version is older than ISA version
 (L__ComputeClassForPoints_PerPixelDecisionTreeNative__QEAAPEAV_$vector_HV_$allo
cator_H_std___std__HPEAH0PEAUNativeFrameData__PEAUPerPixelDecisionTreeNode__HHH_
Z_PerPixelDecisionTreeNative_cpp_483_483__par_region0_2)"

Where the PerPixelDecisionTree is a function I'm writing that does machine learning. 

The project is setup such that a .LIB file is compiled by the Intel C++ 16.0 compiler, and the resultant library is linked to a console application (which is also compiled with the Intel C++ 16.0 compiler). Within the LIB file are the definition of the functions I'm trying to use. 

I've Googled for this error and found nothing. I hope someone out there can at least give me a clue as to what's going on, and how I can start to resolve this. 

Standalone Version of Intel C++ Compiler

$
0
0

Hi,

I installed the Intel C++ compiler via the Intel Parallel Studio. However I only need the compiler and not all of the additional stuff. Is there a way to just download the compiler because for my test environment I can not afford the time to send such a huge file to the target PC.

I already tried the packages at the following  location:

https://software.intel.com/en-us/articles/redistributable-libraries-for-...

but I can not unzip them unfortunately.

many thanks in advance

Assertion failed

$
0
0

Hi,

I am using "Intel Parallel Studio XE 2016 Update 2". I get the following error when I try to compile my program using "Intel C++ 16.0" compiler

demcem_ws_st_rwg.cpp(44) (col. 18): : error : assertion failed at: "shared/cfe/edgglue/edg_decl.c", line 1468

Where line (44) in demcem_ws_st_rwg.cpp is

complex<double> Isub[3][3][3];

If I switch to "Visual C++ 2015" compiler I get no error and the program compiles successfully. Both build are x64.

The simple test case below also does not work

#include <complex>

using namespace std;

int main()
{
	complex<double> Isub[3][3][3];

	return 0;
}

How can I resolve this problem?

Thanks!

Serious apparent bug when allocating byte-objects with new[] and constructors

$
0
0

Hi,

Here is a simple example:

#include <cstdint>

class Foo final {
    public:
        uint8_t packed;

    public:
        inline Foo(void) : packed(0xFF) {} //causes error
        inline ~Foo(void) = default;
};
static_assert(sizeof(Foo)==sizeof(uint8_t),"Implementation error!");

int main(int /*argc*/, char* /*argv*/[]) {
    Foo* arr = new Foo[4]; //Tried a bunch of different sizes.  All fail.
    delete [] arr;

    return 0;
}

This program is valid C++, yet erroneously corrupts its own memory when run, and crashes. The constructor line appears to be the culprit. The program was compiled with Intel C++ 16.0.

For your convenience, here is a link to a complete solution that demonstrates the problem. Here is a link to the assembled code.

-i

C++ Code written in VS2010 is working in Linux but not in windows

$
0
0

Hi

I am working on VS2010 mixed-programing and use the Intel Compiler / VisualStudio (Intel Parallel 2015) to compile my project in VS 2010.

#include <conio.h>
#include <string.h>

//#define readfile readfile_

extern void readfile(char*, int*);

int main()
{
    int n, count;
    char Fname[9];
    char Name[10];

    strcpy(Fname,"AMIN.for");
    fprintf( stderr, "%s\n", Fname);

    readfile( Fname, &n , strlen (Fname));
    fprintf( stderr, "n = %d\n", n);
//  fprintf( stderr, "%s\n", Name);
    getch();
    return 0;
}
subroutine - Lib fortran:

      subroutine readfile( fname1, m )
      character fname1*(*)
      integer m
      integer iounit,i
      iounit=15
      write(*,*) fname1
c10   format (a9)
      open(iounit,file = fname1,action='read')
      read (iounit,*) m
c20    format (i10)
      write(*,*) m
      close(iounit)
      return
      end subroutine

My program is compiling on Linux but not compiling in windows(VS) I don't know what happen exactly. Thanks 

AttachmentSize
Downloadimage/pngScreenshot (51).png188.2 KB

icc: error #10295: error generating temporary file name, check disk space and permissions

$
0
0

Hi ,

I was evaluating trial version of "parallel_studio_xe_2016_composer_edition_for_cpp_update2 (1).tgz". I installed the package as root in defualt location - "/opt/intel"

I have sourced the env by invoking - source /opt/intel/compilers_and_libraries_2016.2.181/linux/bin/compilervars.csh intel64

But i am getting the error "icc: error #10295: error generating temporary file name, check disk space and permissions"

 

Please help !

 

Thanks,

Anchal

 

 

Intel C++ compiler failed to integrate with Visual Studio 2008.

$
0
0

Hello,

I am using MS visual studio 2008 version 9.0.30729.1 SP and MS .NET framework V 3.5 SP1.

I am using Windows 7 64 bit OS. 

I just try to install Intel C++ compiler version 11.1.051 update 3 for Windows.

The installation going fine but it shows an error and it describe integrate.bat failed.

In my developer machine VS 2005/2008/2010 full package installed.

Why Intel installer failed to integrate the C++ compiler with VS 2008.? Kindly help to resolve the issue.

Thanks in Advance.!

Dave

 

 

 


how I update my old compiler in linux

$
0
0

Hi, 

    Our intel compiler version is  "Compiler XE for applications running on Intel(R) 64, Version 14.0.2.144 Build 20140120."

    And the MPSS is 2.1 which is used by the Xeon Phi coprocessor.

    We bought the Intel Parallel Studio XE Cluster Edition for Linux in 2014.11, how to uninstall the old one and update another latest one?  Is that free?

Thanks 

 

dangling pointer check failed

$
0
0

I have a simple and errorless C++ code.

If I turn "All (/Qcheck-pointers-dangling:all)", program failed with message and system exception:

CHKP: Bounds check error ptr=0X00000022EB6191C0 sz=4 lb=0X0000000000000002 ub=0000000000000000 loc=0X00007FF64E191A88

"Unhandled exception at 0x00007FF98CF7DA4A (ntdll.dll) in ConsoleApplication5.exe: A LIST_ENTRY has been corrupted (i.e. double remove)."

Building with Intel(R) C++ Compiler 16.0, ClCompile (x64 - Intel C++)

struct ctest
{
	std::vector<int>		plan_;

	ctest(void* h, uint8_t pid, size_t blk_size, size_t blk_num)
	{
		foo();
	}

	ctest()
	{
		foo();
	}

	void foo()
	{
		plan_.push_back(1);
		auto& v = plan_.back();
		v = 0;
	}
};

void foo_1(void)
{
	ctest buf_(0,0,0,0);
}

void foo_2(void)
{
	ctest buf_();
}

int main()
{
	// passed
	for (int i = 0; i < 64; ++i)
	{
		std::thread d(foo_2);
		d.join();
	}
	// failed at 64th iteration
	for (int i = 0; i < 64; ++i)
	{
		std::thread d(foo_1);
		d.join();
	}
    return 0;
}

 

AttachmentSize
Downloadapplication/zipConsoleApplication5.zip5.38 KB

Building MCMCpack with Intel C++ Compiler

$
0
0

Hello,

 

 

 

I'm trying to build the MCMCpack (version 1.3-4) R package using the Intel C++ compiler (16.0.1 on Scientific Linux 6.5). I have already built R 3.2.3 and many packages using the compiler suite of the same version, but have been unable to get MCMCpack built. R was built using the options suggested at https://software.intel.com/en-us/articles/build-r-301-with-intel-c-compiler-and-intel-mkl-on-linux and https://software.intel.com/en-us/articles/using-intel-mkl-with-r. I get the following error numerous times with only the first line number given changing:

/grid/software/intel/2016/compilers_and_libraries_2016.1.150/linux/compiler/include/complex(305): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible
          return __x._M_value / __y;
                     ^

In file included from ide.h(93),
                 from distributions.h(98),
                 from rng.h(50),
                 from mersenne.h(76),
                 from MCMCrng.h(29),
                 from HMMmultivariateGaussian.cc(22):

The package compiles without error using GCC 4.9.1.

Any help is much appreciated.

 

How to Get a new License File

$
0
0

Hello all.  My student license for Intel Parallel Studio XE Professional Edition for C++ Windows has expired after its one year lifespan.  How do I get a new license file for another year (I'm still a student).  On the webpage https://software.intel.com/en-us/qualify-for-free-software/student it appears that I can only download new software, not simply a new license file.  I'd rather avoid downloading the entire package all over again, and would prefer to continue using the 2015 version that I already have.

Thanks for any help.

Direct-list-initialization of __m128/__m256 variable [bug, ICL 16.0]

$
0
0

The following code produces error when get compiled by Intel C++ 16 on Windows:

    __m128 boo;
    __m128 foo {boo};

The compiler emits this error:

error : no suitable conversion function from "__m128" to "float" exists
              __m128 foo {boo};
                          ^

I get the same error with `__m256` type.

This violates 8.5.4 List-initialization [dcl.init.list]:

8.5.4.3.7 Otherwise, if the initializer list has a single element of type E and either T is not a reference type or
its referenced type is reference-related to E, the object or reference is initialized from that element (by
copy-initialization for copy-list-initialization, or by direct-initialization for direct-list-initialization)...

Does it relate to "ICL can't deduce variable type when a variable is declared using a placeholder type (auto) [bug since C++17]"? I mean: is it also fixed in Intel C++ 17?

 

Viewing all 2797 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>