Prism 6.0 User's Guide

Unsupported Fortran 90 Features

You cannot use Prism to debug Fortran 90 programs containing the features described in this section.

Derived Type Constructors.

Prism does not support constructors for derived types.

type point3 
  integer x,y,z;end 
type point3
type(point3) :: var,var2;

Prism does support assignment to derived types, however. For example:

(prism) assign var = var2

Although Fortran 90 allows the use of constructors, Prism does not support them. The following example is not supported:

(prism) assign var = point3(1,2,3)

Generic Functions

If the generic function is defined in the current module, such as:

interface fadd
  integer function intadd(i, j)    
    integer*4, intent(in) :: i, j  
  end function intadd  
  real function realadd(x, y)    
   real, intent(in) :: x, y  
  end function realadd
end interface

then only references to the fadd are supported, but references to specific functions that define fadd are not. For example:

(prism) whatis intadd
prism: "intadd" is not defined in the scope 
`f90_user_op_generic.exe`f90_user_op_generic.f90`main`

Pointer Assignment Error Checking

The error checking involved by the semantics of the => operator is not fully supported. If your program causes an illegal pointer assignment, Prism might not issue any error, and the behavior of the program will be undefined.

Printing Array Valued Functions

Prism does not print the result of an array-valued function.