[ncl-install] Compiling ncl 6.3.0 with ifort

Orion Poplawski orion at cora.nwra.com
Tue Jun 7 14:59:40 MDT 2016


Compiling ncl 6.3.0 with ifort 16.0.3, I get the following errors:

shagc.f(616): error #6634: The shape matching rules of actual arguments and
dummy arguments have been violated.   [WORK]
      CALL DGAQD(NLAT,DTHETA,DWTS,WORK,LW,IER)
----------------------------------^


mdrgsq.f(55): warning #6717: This name has not been given an explicit type.
[ICHARF]
        ICHARF(CARG)=MOD(ICHAR(CARG)+256,256)
--------^
mdrgsq.f(85): warning #6717: This name has not been given an explicit type.
[ISHIFT]
        IPOS=IOR(ISHIFT(IOR(ISHIFT(IOR(ISHIFT(ICHARF(CTM4(4:4)),8),
-----------------^
mdrgsq.f(85): error #6362: The data types of the argument(s) are invalid.   [IOR]
        IPOS=IOR(ISHIFT(IOR(ISHIFT(IOR(ISHIFT(ICHARF(CTM4(4:4)),8),
----------------------------^
mdrgsq.f(85): error #6362: The data types of the argument(s) are invalid.   [IOR]
        IPOS=IOR(ISHIFT(IOR(ISHIFT(IOR(ISHIFT(ICHARF(CTM4(4:4)),8),
-----------------^
mdrgsq.f(252): warning #6717: This name has not been given an explicit type.
 [ICFELL]
                          IF (ICFELL('MDRGSQ',9).NE.0) RETURN
------------------------------^

mdrgsx.f(113): warning #6717: This name has not been given an explicit type.
 [ISHIFT]
        IPOS=IOR(ISHIFT(IOR(ISHIFT(IOR(ISHIFT(ICHARF(CTM4(4:4)),8),
-----------------^
mdrgsx.f(113): error #6362: The data types of the argument(s) are invalid.   [IOR]
        IPOS=IOR(ISHIFT(IOR(ISHIFT(IOR(ISHIFT(ICHARF(CTM4(4:4)),8),
----------------------------^


vtseti.f(168): warning #6717: This name has not been given an explicit type.
 [ISHIFT]
        ITBM=IOR(ISHIFT(ISHIFT(ITBM,-12),12),IAND(IVAL,4095))
-----------------^
vtseti.f(168): warning #7319: This argument's data type is incompatible with
this intrinsic proc
edure; procedure assumed EXTERNAL.   [IOR]
        ITBM=IOR(ISHIFT(ISHIFT(ITBM,-12),12),IAND(IVAL,4095))
-----------------^
vtseti.f(168): error #6363: The intrinsic data types of the arguments must be
the same.   [IOR]
        ITBM=IOR(ISHIFT(ISHIFT(ITBM,-12),12),IAND(IVAL,4095))
---------------------------------------------^

vtsetr.f(200): warning #6717: This name has not been given an explicit type.
 [ISHIFT]
        ITBM=IOR(ISHIFT(ISHIFT(ITBM,-12),12),IAND(INT(RVAL),4095))
-----------------^
vtsetr.f(200): warning #7319: This argument's data type is incompatible with
this intrinsic proce
dure; procedure assumed EXTERNAL.   [IOR]
        ITBM=IOR(ISHIFT(ISHIFT(ITBM,-12),12),IAND(INT(RVAL),4095))
-----------------^
vtsetr.f(200): error #6363: The intrinsic data types of the arguments must be
the same.   [IOR]
        ITBM=IOR(ISHIFT(ISHIFT(ITBM,-12),12),IAND(INT(RVAL),4095))
---------------------------------------------^


The attached patch seems to fix.  There were other errors like the first,
which was triggered by -warn all turning on -gen-interfaces, but I ended up
using -nogen-interfaces to work around those.

Also, I ended up linking with "ifort -nofor-main" by setting CLoader/CC_LD to
that value.  That's Intel's recommended way of mixing C and Fortran code.

-- 
Orion Poplawski
Technical Manager                     303-415-9701 x222
NWRA, Boulder/CoRA Office             FAX: 303-415-9702
3380 Mitchell Lane                       orion at nwra.com
Boulder, CO 80301                   http://www.nwra.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ncl-intel.patch
Type: text/x-patch
Size: 3443 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/ncl-install/attachments/20160607/e02c2c3c/attachment.bin 


More information about the ncl-install mailing list