Opened 6 years ago
Closed 6 years ago
#831 closed defect (Fixed)
IMPORTANT: Fixed weird compiler error — at Version 1
| Reported by: | arango | Owned by: | |
|---|---|---|---|
| Priority: | major | Milestone: | Release ROMS/TOMS 3.8 |
| Component: | Nonlinear | Version: | 3.8 |
| Keywords: | Cc: |
Description (last modified by )
We are getting a weird compiler error with ifort (intel-17.0.4) in a cluster:
stiffness.f90(119): error #6401: The attributes of this name conflict with those made accessible by a USE statement. [OP_HANDLE]
character (len=3), dimension(5) :: op_handle
-----------------------------------------^
compilation aborted for stiffness.f90 (code 1)
make: *** [/home/hga/ocean/repository/Projects/indian/Build_roms/stiffness.o] Error 1
when using mp_reduce from distribute.F module. It is a bug in the ifort compiler because the variable op_handle is a dummy argument to the module interface:
INTERFACE mp_reduce
# ifdef SINGLE_PRECISION
MODULE PROCEDURE mp_reduce_0dp ! double-precision reduction
MODULE PROCEDURE mp_reduce_1dp ! double-precision reduction
# endif
MODULE PROCEDURE mp_reduce_0d
MODULE PROCEDURE mp_reduce_1d
END INTERFACE mp_reduce
An easy solution is to rename the routine argument from op_handle to handle_op in distribute.F. The compiler thinks that the variable is declared in the module part. Anyway, it a simple variable rename that makes the compiling more robust.
Change History (1)
comment:1 by , 6 years ago
| Description: | modified (diff) |
|---|---|
| Resolution: | → Fixed |
| Status: | new → closed |
Note:
See TracTickets
for help on using tickets.
