Release Information

What problems have been fixed in PGI 2013?

Each release of the PGI compilers brings a number of technical corrections to problems discovered by PGI and by users. Problems found can be emailed directly to PGI Technical Support or submitted through the web-based Support Request form. PGI refers to all such reports as Technical Problem Reports , or TPRs .

The following table is a list of problems that have been fixed in each release. Descriptions as provided may be incomplete due to proprietary nature of the sample code. In such cases simple replacement examples may not be available.

Note: ICE stands for Internal Compiler Error.

TPR Version Affected
Component
Symptoms /
Actions
19318 13.5 Fortran complex(16) matmul not giving consistent answers
Updated the run-time to use the correct precision when forming a complex value
19314 13.5 PGI Accelerator Fortran pgfortran reports the error, "Compiler failed to translate PGI Accelerator region (see -Minfo messages): Unable to find flow graph successor edge to remove"
Corrected the processing of kernel regions containing nested loops and sum reductions
19303 13.5 PGI Accelerator -Mcuda code calling internal procedures fails
Corrected the processing of an internal procedure whose host routine is a module-contained procedure
19296 13.5 PGI Accelerator OpenACC reports the error, "Compiler failed to translate PGI Accelerator region (see -Minfo messages): illegal opcode"
Corrected the processing of kernel regions containing multiple sum reduction variables
19295 13.5 PGDBG Debugger pgdbg fails on Windows for long command lines
Corrected memory corruption issues in the command line processing of pgdbg
19294 13.5 Fortran pgfortran code containing a 2D pointer reshape fails
Corrected pointer reshape when the target is a multi-dimension type containing type bound procedures
19285 13.5 PGI Accelerator Kernel launch fails when there are device arrays larger than 2GB
Allow copying arrays whose size in bytes exceeds a 32-bit integer
19274 13.5 Fortran pgfortran reports a syntax error for the ROUND write specifier
Added support for the ROUND specifier in a WRITE statement
19273 13.5 Windows Fortran msvcr110.dll is not compatible with Visual Studio Update 2
Removed the file mscvrt110.dll from the Windows installation packages
19271 13.5 PGI Accelerator Code containing the acc if clause fails
Added support for the acc if clause
19269 13.5 PGI Accelerator Incorrect results occur when mixing the mirror, reflected, and update clauses
Corrected processing combinations of mirror, reflected, and update
19260 13.5 Fortran Compilation errors occur with mirror/update and USE rename
Corrected the processing of variables in a mirror/update clause which have been renamed with USE association
19259 13.5 32-bit Windows C/C++ Compilation errors occur with winnt11.h on 32-bit Windows
Corrected the syntax of the __asm statements in winnt11.h
19251 13.5 PGI Accelerator Errors occur in OpenACC and CUDA Fortran with x**n, where n is integer(8)
Detect and handle the exponentiation operator when the power is a 64-bit integer
19249 13.5 PGI Accelerator cudaMemcpy2D fails with P2P enabled
Corrected the interfaces through the layers of calls for certain P2P and memory copy operations
19246 13.5 CUDA Fortran pgfortran -Mcuda reports the error, "Internal compiler error. Unsupported procedure 0"
Added support for the minloc and maxloc intrinsics in CUDA fortran
19243 13.5 Fortran Request for the f2008 NEWUNIT feature
Added support for the NEWUNIT specifier in the OPEN statement
19242 13.5 PGPROF Profiler pgprof is not always able to generate CCFF information a PVF-built executable
Corrected how file path names are processed on Windows by pgprof
19241 13.5 PGI Accelerator Incorrect results for OpenACC code due to auto-caching
Corrected the handling of acc register-cached subscripted value
19239 13.5 Fortran pgfortran code containing a finalizable type fails
Corrected the handling of an automatic array of a finalizable type
19237 13.5 C/C++ pgcc code using types/bits.h fails to compile on OpenSuSE 12.3
Added a bits.h file to be used when the GNU version is 4.3
19232 13.5 Fortran pgfortran reports an error when a contained routine has an argument whose name is the same as the host routine
Allow the name of a formal argument to an internal procedure to be the same as the name of the host function
19230 13.5 Fortran Code using a base type containing a default initializer fails during execution
Corrected finalization in the context of the automatic deallocation of allocatables
19228 13.5 C/C++ pgc++ fails to link with -fPIC
Corrected processing a catch clause when compiling -fPIC
19226 13.5 PGI Accelerator OpenACC code calling CUDA C kernels fails
Corrected computing the arguments being passed to the CUDA C routines
19223 13.5 All Missing AVX intrinsics
Added support for the intrinsics, _mm_cmp_ps and _mm_cmp_pd intrinsics, and the predicate, _CMP_EQ_OQ
19220 13.5 64-bit Fortran pgfortran examples fails to execute
Corrected the use of PRESENT of an OPTIONAL fixed-size array argument when the actual argument is an assumed-shape array
19213 13.5 PGI Accelerator Fortran pgfortran fails to compile OpenACC code
Corrected the processing of nested loops in a kernel region
19206 13.5 PGI Accelerator Fortran pgfortran produces the error, "Lowering Error: unexpected symbol type statement function(15)"
Report the use of the name of a statement function appearing in a data clause as an error
19196 13.5 PGI Accelerator Fortran pgfortran emits the warning, "Compiler failed to translate PGI Accelerator region (see -Minfo messages): illegal opcode"
Corrected the handling expression containing a combination of sqrt and divide operations
19190 13.5 PGI Accelerator OpenACC code containing a reduction clause fails to compile
Corrected the processing of a reduction clause appearing before the outermost loop of a loop nest
19175 13.5 PGI Accelerator OpenACC ignores the if clause on parallel and kernels clauses
Added support for the acc if clause
19173 13.5 PGI Accelerator pgfortran fails to compile OpenACC code
Corrected the processing of nested loops in a kernel region
19149 13.5 PGI Accelerator User-specified gang size is ignored during execution
Corrected the processing of the gang size at the point of launching the kernel
19141 13.5 PGI Accelerator pgfortran emits the warning, "Compiler failed to translate PGI Accelerator region (see -Minfo messages): Unknown variable reference"
Corrected the handling of an assignment in a kernel region but not in any loop
19130 13.5 PGI Accelerator pgcc emits the warning, "Compiler failed to translate PGI Accelerator region (see -Minfo messages): Unexpected load/store type"
Improved the handling of the acc cache pragma
19107 13.5 Fortran Allow the type C_PTR to be used in a function type specifier appearing before USE of iso_c_binding
Allow the type C_PTR from the iso_c_binding module to appear in the function statement
19103 13.5 PGI Accelerator pgfortran example fails to compile with -acc
Corrected accessing certain compiler data structures created from PGI Accelerator regions
19081 13.5 PGI Accelerator pgfortran reports the error, "Internal compiler error. cf_data_init: unexpected zeroes"
Corrected the handling of -Mcuda=nofma
18995 13.5 PGI Accelerator Various compilation errors occur with pgcc -acc -ta=nvidia:cc20,keepgpu
Corrected various subscripting issues within PGI Accelerator regions
18911 13.5 PGI Accelerator OpenACC COSMO fails during execution
Corrected the processing of the update clauses for certain types of variables
18889 13.5 All pgcc/pgcpp/pgfortran lack -Mmpi=openmpi switch on OS X and Linux
Ensured that the documentation states that the Open MPI compiler wrappers must be used to build Open MPI programs
18476 13.5 PGPROF Profiler Profiling Open MPI applications fails for pgf77 and pgfortran applications
Updated the Open MPI compiler wrapper instructions in the Profiler User's Guide
18369 13.5 Fortran Unformatted direct access read fails on a file whose last record is incomplete
Updated the run-time to allow a partial last record in an unformatted direct access file
18286 13.5 PGPROF Profiler Open MPI compiler wrapper instructions are obsolete
Updated the Open MPI compiler wrapper instructions in the Profiler User's Guide
18147 13.5 PGI Accelerator Timing individual loops fails with -Mcuda
Corrected the compilers to time PGI Accelerator kernels the same way with -acc with or without -Mcuda
17719 13.5 Fortran pgfortran reports the error, "Internal compiler error. getsname: bad stype" for namelist I/O with derived types
Corrected the processing of namelist I/O of a derived type containing allocatable or pointer components
17171 13.5 PGDBG Debugger pgdbg user on Windows sees the error, "Windows - No Disk", and an exception
Revised how pgdbg determines file and directory existence on Windows
16712 13.5 C/C++ Compiler reports an error when the statement of the for loop is an OpenMP statement
Corrected the compiler to allow an OpenMP statement in a for without being enclosed in braces
3939 13.5 Fortran Enhancement Request - allow a USE-associated kind selector in a function type specifier
Allow a type specifier or kind selector from a module to appear in the function statement
19240 13.4 All Name of function in -Minline may not contain digits
Corrected the driver to allow digits in a function name
19221 13.4 Fortran FORTRAN type bound procedure call fails
Corrected the processing of a pointer-valued function with a class argument of the same type
19211 13.4 PGI CDK PGI CDK node connectivity check is excessive for installations with a large number of nodes
Improved the installation script to optionally perform the connectivity check
19210 13.4 OS X CUDA Fortran Compilation fails with the -Mcuda=rdc option on OS X
Corrected the handling of the rdc option
19207 13.4 Fortran pgfortran reports the error, "Internal compiler error. Macro recursion 0".
Emit a proper error message when macro recursion is detected
19203 13.4 Fortran Nested OpenMP program fails to execute
Corrected the handling of task regions within nested parallel regions
19180 13.4 PVF PVF fails to link due to missing libaccapimp.lib
Added the missing library to the 64-bit Windows installs
19171 13.4 Fortran pgfortran accepts illegal input for a number in a formatted read
Corrected the checking of the syntax for real numbers
19075 13.4 64-bit Fortran pgfortran incorrectly reports an error for a missing .mod file
Corrected the handling of nested USE statements within mixed PRIVATE and PUBLIC access specifiers
18877 13.4 All Improper check of OMP_NUM_THREADs for a non-MP program.
Defer the check of OMP_NUM_THREADs until a program enters a parallel region
18501 13.4 All Poor performance of the STREAMs benchmark on Interlagos and SandyBridge
Improved the compilers to perform the streaming when targeting AVX-enabled processor
17633 13.4 Fortran pgfortran reports the error, "Could not resolve generic procedure"
Corrected the processing of generics defined in multiple modules with mixed PUBLIC and PRIVATE access specifiers
15413 13.4 Fortran pgfortran example containing EQUIVALENCE statements fails during execution
Corrected the processing of EQUIVALENCE statements in a MODULE
19150 13.3 PGI Accelerator C/C++ Windows pgcpp fails to recognize -acc on Windows
Enabled accelerator support in pgcpp on Windows
19140 13.3 Fortran pgfortran INQUIRE by SIZE fails
Corrected the processing of the SIZE specifier of an INQUIRE statement
19138 13.3 C/C++ pgcpp compiled code leads to the linker error, "undefined ref: `LAMMPS_NS::PairGranHertzHistory::__dt( (void))"
Corrected the handling of out-of-class inline declarations
19122 13.3 C/C++ pgcpp reports the error, "Internal compiler error. unexpected init in gen_init_expr 0"
Corrected an issue with a discarded initializer
19118 13.3 Fortran pgfortran reports the error, "Internal compiler error. mkexpr1: bad id 14"
Corrected the processing of a user-defined assignment from generic type bound procedures
19110 13.3 Fortran pgfortran reports the error, "Constant expression of wrong data type"
Allow C_NULL_PTR to be an initializer for an array of TYPE(C_PTR)
19109 13.3 Fortran pgfortran reports the error, "Empty structure constructor()"
Correcting the handling of an empty structure constructor
19106 13.3 Fortran pgfortran reports the error, "Internal compiler error. getsname: bad stype for 0"
Corrected the processing of the deallocate statement of a member of a derived type which is finalizable
19096 13.3 All Errors with creating static executables
Corrected the handling of -Bstatic in the absence of numa libraries
19094 13.3 Fortran pgfortran reports a syntax error when using TYPE IS
Corrected the recognition of the name of a derived type in the TYPE IS statement
19092 13.3 C/C++ pgcpp fails in type conversion in conditional operator
Corrected the handling of m128 operand types in a conditional operator
19090 13.3 Fortran pgfortran reports the error, "Derived type has not been declared - c_mpfr_type"
Corrected the handling of the access attribute for an entity-oriented PARAMETER declaration
19083 13.3 Fortran pgfortran incorrectly reports a finalization error
Corrected the checks of the requirements for final procedures
17716 13.3 Fortran pgfortran reports many errors for legal f2003 code
Corrected the handling of parameterized derived types and structure constructors
15105 13.3 PGDBG Debugger pgdbg attach command fails
Corrected an issue with attach immediately following a detach command
19105 13.2 PGPROF Profiler pgsampt attempts to write to a file in a non-existent directory
Removed the erroneous writes from pgsampt.
19104 13.2 Fortran pghpf reports the error, "ILM file line 21: expecting bit datacnst"
Corrected the compiler
19101 13.2 C/C++ pgc++ fails to recognize the option, -acc
Added -acc to the pgc++ driver
19095 13.2 PGI Accelerator Fortran pgfortran fails to compile the COSMO OpenACC code
Corrected the handling of optional arguments for device routines
19093 13.2 64-bit Fortran pgfortran -i8 fails to compile Gaussian correctly
Corrected the data initialization of a Hollerith constant in the presence of -i8
19084 13.2 Fortran pgfortran reports the error, "Internal compiler error. add_subscript_list: nonconstant subscript"
Corrected the processing of array sections with negative strides in initialization expressions
19061 13.2 Fortran pgfortran NAMELIST and type extension fails
Corrected the processing of a NAMELIST group containing an object of extended type
19056 13.2 Fortran pgfortran fails to report a redefinition error
Improved the error detection of duplicate declarations of allocatable arrays
18998 13.2 Fortran pgfortran reports the error, "Internal compiler error. rewrite_subroutine: unknown stmt found"
Corrected an internal failure with allocatables in the absence of -Mallocatable=03
18991 13.2 PVF Accelerator PVF lacks support for CUDA emulation
Added the CUDA emulation libraries to the PVF install package
18986 13.2 PVF PVF fails to parse multiple .for files
Corrected the detection of files with the .for suffix as fixed-form files
18957 13.2 PVF 'Stop Debugging' action fails when debugging an MPI program
Corrected the handling of the 'Stop Debugging' action in pgdebug and PVF
18933 13.2 OS X Sandybridge not supported on OSX
Upgraded the assembler and compilers to support Sandy Bridge processors on OS X
18932 13.2 PVF .f77 unsupported file extension
Added .f77 as a supported file extension in PVF
18838 13.2 C/C++ pgcpp fails to compile code which includes "ppl.h" on Windows
Corrected the support of new[] and delete[]
18772 13.2 C/C++ Add support for -MT and -MQ to pgcc
Implemented the -MT and -MQ features of cpp
18624 13.2 Fortran F2003 get_environment_variable() test fails
Corrected the implementation of get_environment_variable()
17925 13.2 Fortran system_clock() fails on Windows
Improved the run-time to allow for the poor clock resolution on Windows
17862 13.2 Fortran Performance deficit between PGI- and Intel- compiled code
Added optimizations for the f90 intrinsics matmul and reshape
19070 13.1 C/C++ pgCC error with OpenMP flush
Allow the OpenMP flush pragma to appear inside an empty while statement
19069 13.1 C/C++ pgcc preprocessing _Pragma operator fails for OpenMP
Change the behavior of the preprocessor to insert a newline after the expansion of the _Pragma operator
19066 13.1 CUDA Fortran pgfortran -Mcuda fails to compile user's code.
Correct the processing of the dynamic shared memory
19062 13.1 Fortran Fortran OpenMP set lock routine overwrite data within a derived type
Corrected the Fortran omp set lock routine when called from a serial region
19054 13.1 Fortran pgfortran sourced allocation of a class fails at execution time
Corrected the sourced allocation of a derived type allocatable member
19051 13.1 Fortran Use of the ASSOCIATE construct fails during execution
Corrected the handling of the ASSOCIATE construct
19042 13.1 64-bit Fortran character*1 value arguments are not passed correctly to FUNCTIONs
Corrected passing character data by value
19038 13.1 Fortran pgfortran reports the error, ""Derived type has not been declared - a_t"
Corrected the use of an empty derived type in a class or type declaration
19037 13.1 Fortran pgfortran array remapping gives incorrect results
Corrected the pointer assignment of a 1D array to an equivalent 3D array
19034 13.1 Fortran pgfortran reports the error, "ILM file: missing subtype for array datatype 77"
Corrected the processing of certain array derived type members in the presence of type bound procedures
19031 13.1 C/C++ pgCC reports the error, "Internal error: assertion failed: find_assoc_pragma: pragma not found"
Corrected the scope processing of pragmas within case statements
19021 13.1 Fortran False null pointer reported with -Mchkptr
Inhibit -Mchkptr when performing an associated inquiry of a pointer
19018 13.1 Fortran pgfortran code fails to execute with "glibc detected *** ./a.out: double free or corruption (fasttop):"
Apply the allocatable assignment semantics for a pointer object of a derived type containing allocatable components
19016 13.1 Fortran pgfortran reports the error, "Internal compiler error:mk_forall_sptr: not member or subscript"
Corrected the processing of a FORALL statement when the index variables appears in a character substring reference
19011 13.1 C/C++ pgcc incorrectly reports the error, "Redefinition of symbol"
Corrected the processing of an argument in a function prototype when it also appears in a VLA expression
19005 13.1 64-bit Fortran pgfortran fails to compile code containing parameterized derived type objects with the PARAMETER attribute
Corrected applying the PARAMETER attribute to parameterized derived types
18979 13.1 CUDA Fortran Documentation Remove confusing thread ID description from the CUDA Fortran manual
Updated the manual
18977 13.1 PGI Accelerator Documentation Errors in the OpenACC chapter of the reference manual
Corrected the documentation
18973 13.1 Fortran pgfortran reports an error for a module procedure pointer whose interface is a module subprogram
Corrected the procedure pointer assignment of a module subprogram defined in the same module
18968 13.1 Fortran Calling through procedure pointer without () fails
Corrected calling a procedure via a procedure component without ()
18965 13.1 Fortran pgfortran produces the error, "Lowering Error 'symbol ring$sd is an inconsistent array descriptor'
Corrected the handling of an allocatable member in a call to move_alloc
18964 13.1 Fortran pgfortran produces the error, "Internal compiler error. make_alnd: descriptor does not exist"
Corrected calling a module function returning an allocatable array from within an internal procedure
18962 13.1 Fortran pgfortran produces the error, "Illegal use of symbol- not public entity of module"
Correct the processing of USE ONLY when mixed access types are present
18953 13.1 Fortran pgfortran fails to report an error for a recursive function without a RESULT clause
Corrected the compiler to report error when the name of function is not used to invoke the function
18945 13.1 32-bit Fortran pgcc reports the error, "Illegal use of symbol, __SIZE_TYPE__", when including glob.h
Added the appropriate definition of __SIZE_TYPE__
18939 13.1 Fortran pgfortran -Minline function names should not be case sensitive
The function names specified by -Minline =name and -Minline=except are no longer case sensitive when -Mupcase is absent.
18921 13.1 Fortran Undefined reference to a name of a generic interface from a shared library with -g
Corrected generating debug information of user generics
18920 13.1 C/C++ Invalid results when optimizing unsigned char
Corrected optimizations of small unsigned induction variables
18911 13.1 PGI Accelerator Fortran OpenACC COSMO fails during execution
Corrected the handling of arrays appearing in update clauses
18862 13.1 Fortran pgfortran generates the error, "Internal compiler error. search_arr: not TY_ARRAY"
Corrected the handling of generics specified in modules when mixed access types are present
18856 13.1 Fortran pgfortran could not resolve the user generic procedure trace
Corrected the handling of generics specified in modules when mixed access types are present
18822 13.1 Fortran pgfortran kind argument mismatch in calls to omp_set_nested and omp_set_num_threads when compiled -i8
Added generic interfaces for various omp_ routines to the omp_lib module
18793 13.1 Installation FLEXlm utilities cannot detect network device 'em1' which many newer versions of Linux use by default.
Upgraded to Flexera's FNP version 11.11
18780 13.1 ALL Errors in modulefiles delivered with products
Corrected the entry for CPP to refer to the preprocessor
18707 13.1 Fortran pgfortran produces incorrect results for OpenMP COLLAPSE
Corrected the handling of multiple levels of the COLLAPSE directive
18702 13.1 C/C++ Improper handling of _Pragma in pgcc, pgprepro,
Change the behavior of the prepocessor to insert a newline after the expansion of the _Pragma operator
18692 13.1 Fortran pgfortran program using .not.allocated array in OpenMP Private clause fails during execution
Corrected the check of the allocation status of shared allocatables upon entry to a parallel region
18628 13.1 C/C++ pgcc emits warnings when wcchar.h is included
Inhibited potential truncation warning messages when casting 64-bit unslgned values to int
18543 13.1 Fortran pgfortran should not detect an error for passing a procedure dummy argument
Distinguish between passing a subroutine argument which appeared in an EXTERNAL statement versus a procedure statement
18413 13.1 64-bit C/C++ pgcc -Bstatic -mp=numa causes execution failure on SLES 11 SP 1
Changed the default behavior of -mp to be -mp=nonuma
18291 13.1 C/C++ pgcc code containing the OpenMP pragma with ordered clause fails during execution
Corrected the handling of ordered loop interations
18263 13.1 64-bit Fortran pgfortran generates incorrect debug information for certain derived types
Corrected the debug information for a derived type declared in a host routine and used to declare local variables in a contained routine
18258 13.1 Fortran pgfortran reports the error, "Syntax error at or near WHERE", when a construct name is present
Corrected the compiler to allow a construct name to appear in the WHERE, ELSEWHERE, and ENDWHERE statements
18256 13.1 Fortran Program using OpenMP tasks fails at execution
Corrected the handling of firstprivate and lastprivate semantics of f90 pointers in tasks
18191 13.1 Fortran pgfortran produces warnings indicating truncation of identifiers to 31 characters
Corrected the error message to reflect the f2003 maximum identifier of 63 characters
18144 13.1 Fortran pgfortran produces the error, "Lowering Error unknown target type for conversion" when ISO_C_BINDING is used
Corrected the handling of C_LOC appearing in an array constructor
17841 13.1 Fortran pgfortran produces the error, "Argument missing for formal argument node$sd7"
Corrected the checking of arguments when an internal procedure recursively calls its host subprogram
17785 13.1 Fortran pgfortran code referencing OpenMP firstprivate allocatables fails at execution
Corrected the allocatable semantics of OpenMP private allocatable arrays
17780 13.1 All Need to add GCC 4.5 predefined macros to stdint.h
Updated stdint.h to include the macros new to 4.5
17413 13.1 Fortran pgfortran code containing UPCASE(TRIM(ADJUSTL(HSTATU))) fails at execution
Corrected the processing of the trim intrinsic when its argument is a call of the adjustl intrinsic
17293 13.1 C/C++ pgcc OpenMP code containing omp for with lastprivate and static schedule fails
Corrected the handling of the last iteration of the loop
16816 13.1 C/C++ Improve the error message for an illegal OpenMP usage of taskwait
Corrected the error message to indicate that the taskwait cannot follow a switch statement
16568 13.1 C/C++ pgcc fails to detect illegal OpenMP #pragma usage
Improved the error checking for the appearance of taskwait
14852 13.1 64-bit C/C++ Programs compiled with -fpic -shared -ql fail to link when -Mprof or -pg is present t
Updated the driver to report an unsupported combination of options
14601 13.1 64-bit Fortran Enhance pgfortran to allow alignment of allocatables on page boundaries
Added the specifier ALIGN to the ALLOCATE statement as an extension to effect aligning the object on the specified boundary
Click me