Technical Problem Reports

What problems have been fixed in release 8.0?

Each release of the PGI compilers brings a number of technical corrections to problems discovered by PGI and by users. Submit problems found using our online technical 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 Release Compiler/Other Symptoms/Description
15645 8.0-6 OSX OSX installs need to support other directories besides /opt/pgi
Updated the installer to allow users to change the installation location.
15671 8.0-6 C pgcc fails with floating point subscript expression
Corrected the compiler to report a warning and to convert the expression to integer
15678 8.0-6 C C program generates the message "Illegal use of void type" for an illegal function call.
Corrected the compiler to emit just the message, "Attempt to call non-function"
15685 8.0-6 All omp_In_parallel() can return wrong answer.
Corrected omp_in_parallel() to reflect the state of all enclosing parallel regions.
15686 8.0-6 64-bit C/C++ OpenMP example generates the error: 'add_assignment: bad alignment'
Corrected the C compiler to handle firstprivate aggregates which are 8-byte aligned.
15699 8.0-6 C/C++ Using Microsoft extensions, _try _except and _try_finally, yields the message, "gen_statements: bad statement kind"
Corrected the compiler to report "unsupported microsoft extension: try-except, try-finally".
4172 8.0-6 Fortran Values of threadprivate variables do not persist in the presence of default(private)
Corrected the processing of threadprivate variables when default(private) is present.
15359 8.0-5 Linux Maximum number of cpus not properly computed on SLES10
Updated the run-time to determine the correct value on SLES10
15382 8.0-5 Fortran pgf90 Mstandard should not give warnings for F95 features
A warning for the use of CPU_TIME is no longer issued.
15458 8.0-5 Fortran pgf90 aborts with "add_assign_firstprivate - can't find prologue"
Corrected the processing of firstprivate for a pointer variable within a SINGLE construct.
15473 8.0-5 C/C++ pgcc executable gives bad answers with -Mvect=sse
Corrected the processing of outer index variables in a C nested loop.
15560 8.0-5 All failure of omp_test_nest_lock(nvar) to set the nesting lock
Fixed the lock functon to properly increment the lock variable
15564 8.0-5 64-bit -i8 -fast cause 64-bit compilation to fail
Corrected the detection of reduction operations in large loops
15577 8.0-5 Fortran pgf90 -fast example fails with TERMINATED by signal 11
Corrected the detection of reduction operations in large loops
15580 8.0-5 Fortran associated(pointer) fails
Corrected the associated intrinsic when the pointer is NULL and the target is absent
15581 8.0-5 Fortran pgf90 -Mipa fails with "calc_dw_tag: unexpected type 3"
Corrected the ipa processing of namelist groups
15585 8.0-5 Fortran pgf90 reports error for a threadprivate variable
Corrected the error detection for threadprivate variables in the presence of the DEFAULT(NONE) clause.
15615 8.0-5 Fortran pgf90 -Mipa fails with TERMINATED by signal 6
Fixed a memory write error in ipa
15625 8.0-5 C/C++ complex arguments not passed correctly in 64-bit pgcc
Corrected passing complex arguments via the stack
15571 8.0-4 64-bit Fortran Invalid operand for 'movss' generated for extasm statements at "-O2".
Corrected the extended asm facility to generate the correct move instruction.
15535 8.0-4 Fortran See TPR 15484
15484 8.0-4 Fortran Spread regression in pgf90.
Corrected the handling of the spread intrinsic when the dim argument is present.
15472 8.0-4 32-bit C/C++ Fedora 10 includes "bits/byteswap.h" directly from "endian.h".
Corrected byteswap.h to conditionally include endian.h.
15470 8.0-4 Fortran User Code gets the error "PGF90-S-0084-Illegal use of symbol null"
Using null() as a component initializer no longer conflicts with a component named null.
15461 8.0-4 Fortran See TPR 15434
15460 8.0-4 Fortran pgf90 example shows problems with allocatable derived type.
Corrected assigning derived type objects containing allocatable components.
15434 8.0-4 Fortran Derived type problem in pgf90.
Corrected assigning to an element of a derived type array containing allocatable components.
15558 8.0-4 Fortran size() in subroutine different from size() function on same data.
Corrected computing size of host allocatables from within contained/internal procedures.
15553 8.0-4 Fortran Derived type assignment gives the error "mk_mem_ptr_shape: no static desc for pointer".
Corrected assigning derived type objects containing allocatable components.
15518 8.0-4 Fortran Incorrect size of temp when using the 'repeat' intrinsic.
Corrected the processing of the result of the repeat intrinsic when used in an expression also referencing the adjustl intrinsic.
15517 8.0-4 32-bit Fortran 32-bit pgf90 example gives the error "exp_ac:ilm not cased' 'unrec. ili opcode' ".
Corrected the 32-bit compiler when processing the 64-bit versions of the popcnt, poppar, and leadz intrinsics.
15479 8.0-4 PGDBG No variables in scope in subroutine with alternate entry.
Corrected the processing of Fortran ENTRYs by the debugger.
15475 8.0-4 Fortran User code gets the error "size_of:bad dtype".
Corrected deallocating derived type objects containing allocatable components.
15409 8.0-4 Fortran F90 program causes compiler TERMINATION.
Corrected the handling of derived type constructors containing pointer or allocatable components.
15406 8.0-4 Fortran User example (allocate (f(a)) ) generates the error "gen_funcret: illegal dtype, sym".
Corrected declaring a pointer-valued function with the POINTER statement.
15382 8.0-4 32-bit Fortran -Mstandard should not give warnings for F90 extensions that are now part of F95.
Do not classify features new to f95 as extensions
15437 8.0-3 C/C++ pgcc aborts with TERMINATED by signal 11.
Corrected converting an integer constant to double complex.
15474 8.0-3 PVF Macros not evaluated in Working Directory property.
Added macro evaluation to the handling of the Working Directory property.
15464 8.0-3 Fortran pgf90 fails when type(c_ptr) combined with value attribute.
Allow a dummy argument of a subprogram to be C_PTR and VALUE.
15442 8.0-3 Fortran pgf90 hoists pointer dereference out of loop at -O2.
Corrected the compiler to detect the presence of a guarded pointer dereference in the presence of a call.
15440 8.0-3 PVF Unspecified PVF error.
Fixed Package Load failure.
15435 8.0-3 Fortran ALLOCATABLE arrays as dummy arguments fail.
Corrected passing local allocatable arrays to a routine whose corresponding formals are also allcocatble.
15412 8.0-3 Fortran pgf90 Non-standard f90 usage causes ICE 'name_dependent: unexpected ast'.
Add an error check for a component of the result of a function.
15218 8.0-3 PGDBG/PGPROF java can fail with xcb_xlib.c:50: xcb_xlib_unlock.
Update to Java 6 on Linux.
4063 8.0-2 All c++ debug info is recursive.
Corrected the c++ compiler to process void typedefs and void subroutine type entries.
4332 8.0-2 Fortran Fortran Blockdata in a archive is not linked on Mac OSX.
pgf90 forces a reference to the blockdata if its name appears in an EXTERNAL statement.
14856 8.0-2 Fortran pgf90 fails to detect errors of INTENT(IN) arguments.
The compiler has been fixed to detect passing an INTENT(IN) dummy to a routine whose corresponding dummy is INTENT(INOUT), INTENT(OUT), or has default INTENT.
15048 8.0-2 Fortran pgf90 fails to report a warning that a character of length greater than 1 is passed to C_LOC.
Fixed the compiler to detect this error.
15381 8.0-2 Fortran pgf90 fails to compile a routine that does not return at -O2.
Corrected the compiler to accommodate a subprogam which does not contain a normal exit.
15387 8.0-2 C/C++ pgcc example seg faults when compiled -O2 -fpic.
Corrected the compiler to ensure that compiler-generated assignments to 'const' objects are deleted.
15393 8.0-2 Fortran Fortran component initializations are not applied to a dummy argument.
Corrected the compiler to apply the initializations when the dummy argument is INTENT(OUT).
15394 8.0-2 Fortran pgf90 not detecting the use of private components when use associated.
Fixed the compiler to report an error for a derived type appearing as an I/O item when the type contains private components.
15395 8.0-2 64-bit Fortran Provide same functionality of GNU's "-finstrument-functions" option.
Added the feature, -Minstrument[:functions] to gcc/gfortran; added the feature, -Minstrument[:functions].
15398 8.0-2 C/C++ C++ non-templated abs(complex) not defined in STL library.
Add support for abs(complex) to the STL.
15403 8.0-2 Fortran Regression of ADJUSTR behavior.
Fixed the result of ADJUSTR so it is correct if its argument contains a TRIM intrinsic invocation.
15404 8.0-2 64-bit C/C++ Boost C++ file too large to compile with -w.
Fixed the compiler to address size issue.
15414 8.0-2 64-bit Fortran ECHAM5 application from Max-Planck-Institut fails at runtime with SEGV using 7.2-5.
Rebuilt ECHAM5 and it fixed the problem.
15419 8.0-2 64-bit C/C++ pgCC lacks a shared object of libstd with -mp.
Added the appropriate shared object for combination of -fpic, -lstd, and -mp.
15432 8.0-2 OSX OSX license manager setup script 'PGI' should change 7.0 to 8.0 .
Line in file changes to correct version.
15436 8.0-2 Fortran Failure to nullify deallocated pointer.
Corrected behavior so a deallocate() of a pointer now nullifies that pointer.
3699 8.0-1 All pgdbg incorrect array element is printed.
4293 8.0-1 All pgbdg 'display' shows different values than a PRINT statement.
Corrected the debug information produced by the fortran compiler for assumed shape arrays
4313 8.0-1 C++ pgCC should emulate GCC'S treatment of system header files.
Enhanced the compiler to omit warnings for supported "non-standard" features unless the --pedantic switch is present
14710 8.0-1 C++ pgCC uses 1-byte unbuffered writes when emitting error messages.
Corrected the error processing in the compiler to emit the errors as complete lines.
14715 8.0-1 All preprocessor does not handle comment lines properly.
Corrected the preprocessor when the name of function macro appeared at the end of any line including comment lines.
14969 8.0-1 32-bit C/C++ Example fails with "Can't find a register in class 'AREG'".
Corrected register allocation for two output operands in an extended asm sequence."
15052 8.0-1 64-bit HPF HPF program fails to run correctly with -Mmpi.
Corrected the HPF run-time to use the default MPI library.
15070 8.0-1 Fortran Nonadvancing read of 'stdin' fails to execute properly.
Corrected the I/O run-time to position the preconnected unit at end-of-record after performing a nonadvancing read.
15081 8.0-1 Windows Trial license does not support more than one PVF project.
Creating multiple PVF projects is now allowed with a trial license.
15141 8.0-1 Fortran preprocessor treats variables named 'pgi' as a macro.
The name 'pgi' is no longer a predefined macro name in the preprocessor.
15152 8.0-1 64-bit Fortran pgf95 entering an infinite loop at -02.
Corrected the processing of automatic arrays declared in an internal procedure whose extents depend on the size of a host automatic array.
15154 8.0-1 Fortran pgf90 fails test of type equivalence of derived types.
Corrected the type equivalence checking of derived types which are recursive (the derived types containg self-referential members).
15161 8.0-1 Fortran pgf90 fails with "bld_lhs, ast nyd 45"
Corrected the compiler to properly pass an allocatable argument to a routine whose corresponding argument is allocatable.
15166 8.0-1 Fortran pgf90 example fails at -O2 with "bld_lhs, ast nyd" and at -O1 with "redundss:mark unexpected AST type".
Corrected the compiler to properly pass an allocatable module variable to a routine whose corresponding argument is allocatable."
15172 8.0-1 64-bit C++ -Wc, a issues error for __builtin_huge_val.
The compiler no longer issues an "ansi" error for HUGE_VAL since it's a supported builtin.
15174 8.0-1 Fortran f90 parameter attribute disables bounds checking.
Apply array bounds checking when subscripting an array with the parameter attribute.
15175 8.0-1 C False warning about packed structures.
The compiler should not emit the warning when the packed attribute is embedded in the typedef of the formal argument.
15184 8.0-1 Fortran pgf90 example fails wiht "Errors in ILM file".
Corrected the processing of a pointer assignment whose target is a substring reference with an omitted starting or ending position."
15190 8.0-1 C/C++ pgcc gives bad answers with -Mipa=fast when recompile needed.
Corrected ipa to detect when a function may modify its arguments.
15203 8.0-1 OSX pgdbg fails with 'not defined in current scope'.
Corrected the debug information for module variables so that the user can fully qualify module variable names.
15209 8.0-1 Fortran pgf90 fails to use the initialization in the module.
The compiler failed to apply the explicit component initializers when the derived type contained allocatable components.
15216 8.0-1 Fortran Error with f90 character length specification.
Corrected the processing of a subsripted array element as the argument to the len intrinsic in a specification expression.
15222 8.0-1 Fortran pgf90 fails with "bad ast optype in expression"
Corrected the processing of a subscript reference of a formal array array in a specification statement."
15226 8.0-1 All Install script gives improper pointer to old /account/index.php.
Corrected the instructions produced by the install script.
15228 8.0-1 Fortran File opened with READ and APPEND should not return failing status.
Corrected the I/O run-time to allow the combination of the action flags READ and APPEND.
15237 8.0-1 Fortran pgf90 fails with "Illegal use of derived type" for BIND(C) derived types.
Allow type equivalence for derived types which have the BIND(C) attribute.
15244 8.0-1 C/C++ Debug line number information missing for one line functions.
Emit the correct line dwarf entries for one line functions.
15251 8.0-1 32-bit pgcc - wrong if condition result for if( ~(0x1 & ii))
Corrected a peephole optimization that did not properly set the condition code of and operation.
15254 8.0-1 Fortran pgf90 fails with "flowgraph: node is zero".
The compiler determined that the conditionals in consecutive if statements branching to the same target were always false. The compiler deleted the conditionals, but failed to update the target of the conditionals.
15260 8.0-1 Fortran pgf90 hangs when compiling a BIND(C) declaration.
Corrected the processing of a BIND(C) declaration containing a list of variables.
15335 8.0-1 Fortran Program fails due to allocation for assumed character length.
Corrected the length computation of an assumed length character argument for a subprogram which also has a procedure argument whose interface specifies pointer arguments.
15338 8.0-1 Fortran Syntax error when using "optional" attribute with an allocatable.
Corrected the compiler to allow the OPTIONAL and ALLOCATABLE attributes for a dummy argument.
15362 8.0-1 64-bit C++ pgCC with -fast causes bad code for conditional assignment.
Corrected the optimizations to detect a conflict between members of a class inlined from different functions

Click me