diff options
author | Brad King <brad.king@kitware.com> | 2020-10-23 13:05:58 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2020-10-23 13:06:03 (GMT) |
commit | 5988a4deea67ed122b30c2c0437f70e074273789 (patch) | |
tree | e5778a4fe363ea15f0d9ab9fd587e7ec20465567 /Tests/RunCMake/Syntax/RunCMakeTest.cmake | |
parent | 31848e35a7fa4f7fc8db6f824db86bb7e4809e71 (diff) | |
parent | 8aee7fdb32a7099e3e4efdf1bf0a00732ee1c46b (diff) | |
download | CMake-5988a4deea67ed122b30c2c0437f70e074273789.zip CMake-5988a4deea67ed122b30c2c0437f70e074273789.tar.gz CMake-5988a4deea67ed122b30c2c0437f70e074273789.tar.bz2 |
Merge topic 'no-override-flow-control'
8aee7fdb32 cmState: Prohibit override of flow control commands
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5409
Diffstat (limited to 'Tests/RunCMake/Syntax/RunCMakeTest.cmake')
-rw-r--r-- | Tests/RunCMake/Syntax/RunCMakeTest.cmake | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Tests/RunCMake/Syntax/RunCMakeTest.cmake b/Tests/RunCMake/Syntax/RunCMakeTest.cmake index 34885b8..4d24657 100644 --- a/Tests/RunCMake/Syntax/RunCMakeTest.cmake +++ b/Tests/RunCMake/Syntax/RunCMakeTest.cmake @@ -123,3 +123,30 @@ run_cmake(FunctionUnmatched) run_cmake(FunctionUnmatchedForeach) run_cmake(MacroUnmatched) run_cmake(MacroUnmatchedForeach) + +function(run_override name) + string(TOLOWER "${name}" lname) + set(RunCMake_DEFAULT_stderr "^CMake Error at [^ +]*/Tests/RunCMake/Syntax/Override\\.cmake:[0-9]+ \\(function\\): + Built-in flow control command \"${lname}\" cannot be overridden\\. +Call Stack \\(most recent call first\\): + [^ +]*/Tests/RunCMake/Syntax/Override\\.cmake:[0-9]+ \\(override\\)$") + run_cmake_command(Override${name} "${CMAKE_COMMAND}" -DFUNCTION_NAME=${name} -P "${RunCMake_SOURCE_DIR}/Override.cmake") +endfunction() + +run_override(Break) +run_override(Continue) +run_override(Else) +run_override(ElseIf) +run_override(EndForeach) +run_override(EndFunction) +run_override(EndIf) +run_override(EndMacro) +run_override(EndWhile) +run_override(Foreach) +run_override(Function) +run_override(If) +run_override(Macro) +run_override(Return) +run_override(While) |