diff options
author | Ben Boeckel <ben.boeckel@kitware.com> | 2022-11-29 14:41:59 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2022-11-30 11:39:48 (GMT) |
commit | a67da2ef66883488554fe3647b9e11aeb52c09e6 (patch) | |
tree | 5c828197c6648032bf7f7153b2e39334a4460107 /Tests | |
parent | 88fb1980c3dc4dd56bbaf41cb84500520be5ab9a (diff) | |
download | CMake-a67da2ef66883488554fe3647b9e11aeb52c09e6.zip CMake-a67da2ef66883488554fe3647b9e11aeb52c09e6.tar.gz CMake-a67da2ef66883488554fe3647b9e11aeb52c09e6.tar.bz2 |
Tests/FortranModules: add case for modules after "end interface X"
When there is an `end interface X` in a file, subsequent modules should
not be considered part of interface X.
Issue: #24203
Diffstat (limited to 'Tests')
-rw-r--r-- | Tests/FortranModules/CMakeLists.txt | 10 | ||||
-rw-r--r-- | Tests/FortranModules/test_multi_module.f90 | 8 | ||||
-rw-r--r-- | Tests/FortranModules/test_multi_module_main.f90 | 4 |
3 files changed, 22 insertions, 0 deletions
diff --git a/Tests/FortranModules/CMakeLists.txt b/Tests/FortranModules/CMakeLists.txt index 94f5939..5c76132 100644 --- a/Tests/FortranModules/CMakeLists.txt +++ b/Tests/FortranModules/CMakeLists.txt @@ -42,6 +42,16 @@ add_executable(test_module test_module_implementation.f90 test_module_interface.f90) +add_executable(test_multi_module + # Place this first so that we do not get "lucky" and find the module provided + # by compiling `test_multi_module.f90` first. + test_multi_module_main.f90 + test_multi_module.f90) +set_property(TARGET test_multi_module PROPERTY + JOB_POOL_COMPILE multi_module_serial) +set_property(GLOBAL APPEND PROPERTY + JOB_POOLS multi_module_serial=1) + add_executable(test_use_in_comment_fixedform test_use_in_comment_fixedform.f) set_property(SOURCE test_use_in_comment_fixedform.f PROPERTY Fortran_FORMAT FIXED) diff --git a/Tests/FortranModules/test_multi_module.f90 b/Tests/FortranModules/test_multi_module.f90 new file mode 100644 index 0000000..5b28f74 --- /dev/null +++ b/Tests/FortranModules/test_multi_module.f90 @@ -0,0 +1,8 @@ +module first + interface inner + end interface inner +end module first + +module second + REAL :: C = 1 +end module second diff --git a/Tests/FortranModules/test_multi_module_main.f90 b/Tests/FortranModules/test_multi_module_main.f90 new file mode 100644 index 0000000..afd6dff --- /dev/null +++ b/Tests/FortranModules/test_multi_module_main.f90 @@ -0,0 +1,4 @@ +PROGRAM MAINF90 + use second + PRINT *,'Constant is',C +END PROGRAM MAINF90 |