Using SciGraph Library with CFV 6.6B

Using SciGraph Library with CFV 6.6B

I have been using the SciGraph library that came with the compiler to plot data to the screen. Recently, I updated the compiler to version 6.6B. The first time that I tried to compile a program that worked with older compiler versions, I keep getting error messages like:

ScreenPlot.F90(61) : Error: If the actual argument is scalar, the corresponding dummy argument shall be scalar unless the actual argument is an element of an array that is not an assumed-shape or pointer array, or a substring of such an element. [DSETTINGSARRAY]
retcode=GetMultiDataDefaults
^
(xyGraph,IMAX,xyData,1,xyDataSet)

I have had no problems with this library using previous versions of the compiler (6.0 through 6.6A) and I haven't changed anything in the old code or the project settings. Does anyone have an idea what the problem is? I am using Windows NT 4.0 Service Pack 6.

The initializations in the subroutine that calls the library function is here:

SUBROUTINE ScreenPlotter(LUNIT,X,Y,DIMX,NXS,NXF,TITLES)
USE DFLIB
USE SCIGRAPH

CHARACTER*(*) TITLES(2)
CHARACTER*36 SCRTITLE
INTEGER DIMX,LUNIT,NXS,NXF,N1,IMAX
REAL*4 X(dimx,1),Y(dimx,1)

! -------------------------------------------------
! SCIGRAPH DEFINITIONS
! -------------------------------------------------
RECORD /GraphSettings/ xyGraph
RECORD /DataSettings/ xyDataSet
RECORD /AxisSettings/ xyAxes(2)
REAL*4 xyData(2,dimx,1)
CHARACTER*20 xyDataLegend
INTEGER retcode
INTEGER setLegends
RECORD /windowconfig/ wc
! --------------------------------------------------

retcode=GetMultiDataDefaults(xyGraph,IMAX,xyData,1,xyDataSet)

2 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

The error message is quite clear - it is a check that was not in earlier compiler versions. The routine you're calling has this argument defined as an array, but you're passing a scalar. The Fortran standard says this is not allowed.

I suggest you declare your xyDataSet as an array (perhaps with one element). Apply the same fix to the other cases.

Steve

Steve - Intel Developer Support

Leave a Comment

Please sign in to add a comment. Not a member? Join today