- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
I am building a Fortran .DLL that contains offloads to MIC.
In the project there is a module containing interfaces to non-exported subroutines and functions. mod_interfaces.f90 defining module mod_interfaces, with interfaces only.
One of the examples are
subroutine games_check(crames) !DIR$ ATTRIBUTES OFFLOAD : mic :: games_check use dyn_array_crames implicit none type(CRAMES_t) :: crames end subroutine games_check
That is in the interface file. The source file containing the subroutine has:
!DIR$ ATTRIBUTES OFFLOAD : mic :: games_check subroutine games_check(crames) use mod_interfaces use dyn_array_crames implicit none type(CRAMES_t) :: crames !DIR$ ATTRIBUTES OFFLOAD : mic :: crames_rect !DIR$ ATTRIBUTES OFFLOAD : mic :: crames_circ IF ((crames%test_vertical == .TRUE.) .OR. & (crames%test_horizontalx == .TRUE.) .OR. & (crames%test_horizontaly == .TRUE.)) THEN ... more code ...
The location of the error:
!DIR$ ATTRIBUTES OFFLOAD : mic :: games_check call games_check(crames)
The above occurs in a subroutine that has the use_interfaces.
And the error message:
Compiling with Intel(R) Visual Fortran Compiler XE 15.0.4.221 [Intel(R) 64]... CRAMES_WinMain_2015_Apr_scaled_singleprocs.f90 C:\QuickThread Programming LLC\SANRAL\SanralME2_CRAMESparallel\meCRAMESparallelDLL\CRAMES_WinMain_2015_Apr_scaled_singleprocs.f90(276): error #6401: The attributes of this name conflict with those made accessible by a USE statement. [GAMES_CHECK]
There are 9 other similar errors.
The builds of the library was succeeding up until added a few other interfaces to the mod_interface.f90 file.
This seems like the same error supposedly fixed Aug 8, 2014 with DPD200361383
Any hints on how to resolve?
While awaiting a formal fix, I will try moving the interfaces from the module to the local scope of the subroutine making the call
Jim
コピーされたリンク
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
Moving the interfaces to the subroutines that use them corrected the problem.
Jim Dempsey
