[Cmake-commits] CMake branch, next, updated. v3.8.0-rc2-553-ged2a6b4
Kitware Robot
kwrobot at kitware.com
Wed Mar 22 08:45:04 EDT 2017
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
discards cc58090bb01be9c687ae307201040e4d9f27ca23 (commit)
discards 77e5b3b683470c27f3cfef73c0b5c777383ef3d9 (commit)
discards 64601c441f5ea323ba2b16fd351760cb4dce6120 (commit)
discards 8d241e1d1ff431e289681e3701ebe372f46725e4 (commit)
discards 34f0e30ba3330a641c90e8e9b4121c00d98b8b1e (commit)
discards 90bd013cadfd642c046183a29b88d2c20d822347 (commit)
discards 6b2b25256d6a91c19984c57a44705f988b874cd0 (commit)
discards 9d56545bf15fe9a22f8468ea1a7263701577bdbf (commit)
discards e49f1273a98ff9fabadeab307d49e43e10960215 (commit)
discards ee1a83a7d5baa835174d9916aac5df9e11b2a2eb (commit)
discards 93e18d8e1342f6533891c9e40ffac5542d61d2f8 (commit)
via ed2a6b4d93647fa6f997ecf8432aa065936d9da1 (commit)
via b3897c5f838e186e4ab665ee7edc588a788d0f2b (commit)
via bfa7ca02038fadd1c72e26c844d7cb2c16b8faf5 (commit)
via bb7a241f86c9235e97cb09a103c29bb5680dd354 (commit)
via 38c9a42b6b0e8f3ef9d14448e6b01cf6b26771dc (commit)
via 213cd05b5264eeaa48f3e8ddb0eac0359b412ae1 (commit)
via 1d75187ea1f1519b0a390928e18e2e8158b72685 (commit)
via bb24b117d8fed6692207ac066ac6fc46867cec93 (commit)
via 266820722c96de7e899a755429c970c1e393665b (commit)
via df189da83628ccad7819ab48574073c9dc3ecb2f (commit)
via edac95b955afdea2d129b32b029bf845dc29cb71 (commit)
This update added new revisions after undoing existing revisions. That is
to say, the old revision is not a strict subset of the new revision. This
situation occurs when you --force push a change and generate a repository
containing something like this:
* -- * -- B -- O -- O -- O (cc58090bb01be9c687ae307201040e4d9f27ca23)
\
N -- N -- N (ed2a6b4d93647fa6f997ecf8432aa065936d9da1)
When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ed2a6b4d93647fa6f997ecf8432aa065936d9da1
commit ed2a6b4d93647fa6f997ecf8432aa065936d9da1
Merge: b3897c5 edac95b
Author: Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 22 12:44:22 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 22 08:44:24 2017 -0400
Stage topic '14335-duplicate-else'
Topic-id: 23133
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/594
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b3897c5f838e186e4ab665ee7edc588a788d0f2b
commit b3897c5f838e186e4ab665ee7edc588a788d0f2b
Merge: bfa7ca0 ca2ece6
Author: Gregor Jasny <gjasny at googlemail.com>
AuthorDate: Wed Mar 22 07:13:08 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 22 08:43:59 2017 -0400
Stage topic '16624-blas-lapack-documentation'
Topic-id: 23163
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/603
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bfa7ca02038fadd1c72e26c844d7cb2c16b8faf5
commit bfa7ca02038fadd1c72e26c844d7cb2c16b8faf5
Merge: bb7a241 805706b
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Mar 21 19:27:56 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 22 08:43:59 2017 -0400
Stage topic 'ninja-fortran-depfile-fix'
Topic-id: 23158
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/601
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bb7a241f86c9235e97cb09a103c29bb5680dd354
commit bb7a241f86c9235e97cb09a103c29bb5680dd354
Merge: 38c9a42 2c55c14
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Mar 21 17:17:05 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 22 08:43:58 2017 -0400
Stage topic 'FindHDF5-optional-no-config'
Topic-id: 23148
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/599
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=38c9a42b6b0e8f3ef9d14448e6b01cf6b26771dc
commit 38c9a42b6b0e8f3ef9d14448e6b01cf6b26771dc
Merge: 213cd05 feaea06
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Mar 21 15:16:33 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 22 08:43:58 2017 -0400
Stage topic 'cuda_no_ninja_response_support'
Topic-id: 23138
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/596
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=213cd05b5264eeaa48f3e8ddb0eac0359b412ae1
commit 213cd05b5264eeaa48f3e8ddb0eac0359b412ae1
Merge: 1d75187 18009aa
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Mar 21 15:13:09 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 22 08:43:58 2017 -0400
Stage topic 'libarchive-backport-rc4-crypto-rec'
Topic-id: 23145
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/598
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1d75187ea1f1519b0a390928e18e2e8158b72685
commit 1d75187ea1f1519b0a390928e18e2e8158b72685
Merge: bb24b11 6c83267
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Mar 21 14:43:44 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 22 08:43:58 2017 -0400
Stage topic 'wip.ipo.module'
Topic-id: 22904
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/558
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bb24b117d8fed6692207ac066ac6fc46867cec93
commit bb24b117d8fed6692207ac066ac6fc46867cec93
Merge: 2668207 2a826e3
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Mar 21 14:33:00 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 22 08:43:57 2017 -0400
Stage topic 'revert-cpack_nsis_sign_uninstaller'
Topic-id: 23143
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/597
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=266820722c96de7e899a755429c970c1e393665b
commit 266820722c96de7e899a755429c970c1e393665b
Merge: df189da 075f6454
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Mar 21 14:03:48 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 22 08:43:57 2017 -0400
Stage topic 'module-def-and-WINDOWS_EXPORT_ALL_SYMBOLS'
Topic-id: 23029
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/581
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=df189da83628ccad7819ab48574073c9dc3ecb2f
commit df189da83628ccad7819ab48574073c9dc3ecb2f
Merge: 7ebbe4f 5606622
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue Mar 21 13:10:48 2017 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Mar 22 08:43:57 2017 -0400
Stage topic 'cpack-rpm-debuginfo-multiple-files-fix'
Topic-id: 23135
Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/595
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=edac95b955afdea2d129b32b029bf845dc29cb71
commit edac95b955afdea2d129b32b029bf845dc29cb71
Author: Gregor Jasny <gjasny at googlemail.com>
AuthorDate: Mon Mar 20 21:49:59 2017 +0100
Commit: Brad King <brad.king at kitware.com>
CommitDate: Wed Mar 22 08:42:35 2017 -0400
cmIfCommand: Reject duplicate else() and misplaced elseif()
Closes: #14335
diff --git a/Source/cmIfCommand.cxx b/Source/cmIfCommand.cxx
index a8fa4f9..421c3dd 100644
--- a/Source/cmIfCommand.cxx
+++ b/Source/cmIfCommand.cxx
@@ -57,8 +57,19 @@ bool cmIfFunctionBlocker::IsFunctionBlocked(const cmListFileFunction& lff,
// watch for our state change
if (scopeDepth == 0 &&
!cmSystemTools::Strucmp(this->Functions[c].Name.c_str(), "else")) {
+
+ if (this->ElseSeen) {
+ cmListFileBacktrace bt = mf.GetBacktrace(this->Functions[c]);
+ mf.GetCMakeInstance()->IssueMessage(
+ cmake::FATAL_ERROR,
+ "A duplicate ELSE command was found inside an IF block.", bt);
+ cmSystemTools::SetFatalErrorOccured();
+ return true;
+ }
+
this->IsBlocking = this->HasRun;
this->HasRun = true;
+ this->ElseSeen = true;
// if trace is enabled, print a (trivially) evaluated "else"
// statement
@@ -68,6 +79,15 @@ bool cmIfFunctionBlocker::IsFunctionBlocked(const cmListFileFunction& lff,
} else if (scopeDepth == 0 &&
!cmSystemTools::Strucmp(this->Functions[c].Name.c_str(),
"elseif")) {
+ if (this->ElseSeen) {
+ cmListFileBacktrace bt = mf.GetBacktrace(this->Functions[c]);
+ mf.GetCMakeInstance()->IssueMessage(
+ cmake::FATAL_ERROR,
+ "An ELSEIF command was found after an ELSE command.", bt);
+ cmSystemTools::SetFatalErrorOccured();
+ return true;
+ }
+
if (this->HasRun) {
this->IsBlocking = true;
} else {
diff --git a/Source/cmIfCommand.h b/Source/cmIfCommand.h
index 56eef30..f81db67 100644
--- a/Source/cmIfCommand.h
+++ b/Source/cmIfCommand.h
@@ -21,6 +21,7 @@ public:
cmIfFunctionBlocker()
{
this->HasRun = false;
+ this->ElseSeen = false;
this->ScopeDepth = 0;
}
~cmIfFunctionBlocker() CM_OVERRIDE {}
@@ -32,6 +33,7 @@ public:
std::vector<cmListFileFunction> Functions;
bool IsBlocking;
bool HasRun;
+ bool ElseSeen;
unsigned int ScopeDepth;
};
diff --git a/Tests/RunCMake/if/RunCMakeTest.cmake b/Tests/RunCMake/if/RunCMakeTest.cmake
index 077d00a..f54edf7 100644
--- a/Tests/RunCMake/if/RunCMakeTest.cmake
+++ b/Tests/RunCMake/if/RunCMakeTest.cmake
@@ -3,7 +3,11 @@ include(RunCMake)
run_cmake(InvalidArgument1)
run_cmake(IsDirectory)
run_cmake(IsDirectoryLong)
+run_cmake(duplicate-deep-else)
+run_cmake(duplicate-else)
+run_cmake(duplicate-else-after-elseif)
run_cmake(elseif-message)
+run_cmake(misplaced-elseif)
run_cmake(MatchesSelf)
diff --git a/Tests/RunCMake/if/duplicate-deep-else-result.txt b/Tests/RunCMake/if/duplicate-deep-else-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/if/duplicate-deep-else-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/if/duplicate-deep-else-stderr.txt b/Tests/RunCMake/if/duplicate-deep-else-stderr.txt
new file mode 100644
index 0000000..ac2335c
--- /dev/null
+++ b/Tests/RunCMake/if/duplicate-deep-else-stderr.txt
@@ -0,0 +1,4 @@
+CMake Error at duplicate-deep-else.cmake:[0-9]+ \(else\):
+ A duplicate ELSE command was found inside an IF block.
+Call Stack \(most recent call first\):
+ CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/if/duplicate-deep-else.cmake b/Tests/RunCMake/if/duplicate-deep-else.cmake
new file mode 100644
index 0000000..94f06de
--- /dev/null
+++ b/Tests/RunCMake/if/duplicate-deep-else.cmake
@@ -0,0 +1,7 @@
+if(0)
+else()
+ if(0)
+ else()
+ else()
+ endif()
+endif()
diff --git a/Tests/RunCMake/if/duplicate-else-after-elseif-result.txt b/Tests/RunCMake/if/duplicate-else-after-elseif-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/if/duplicate-else-after-elseif-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/if/duplicate-else-after-elseif-stderr.txt b/Tests/RunCMake/if/duplicate-else-after-elseif-stderr.txt
new file mode 100644
index 0000000..ba6765c
--- /dev/null
+++ b/Tests/RunCMake/if/duplicate-else-after-elseif-stderr.txt
@@ -0,0 +1,4 @@
+CMake Error at duplicate-else-after-elseif.cmake:[0-9]+ \(else\):
+ A duplicate ELSE command was found inside an IF block.
+Call Stack \(most recent call first\):
+ CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/if/duplicate-else-after-elseif.cmake b/Tests/RunCMake/if/duplicate-else-after-elseif.cmake
new file mode 100644
index 0000000..d1d4ac1
--- /dev/null
+++ b/Tests/RunCMake/if/duplicate-else-after-elseif.cmake
@@ -0,0 +1,5 @@
+if(0)
+elseif(0)
+else()
+else()
+endif()
diff --git a/Tests/RunCMake/if/duplicate-else-result.txt b/Tests/RunCMake/if/duplicate-else-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/if/duplicate-else-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/if/duplicate-else-stderr.txt b/Tests/RunCMake/if/duplicate-else-stderr.txt
new file mode 100644
index 0000000..e0dd01f
--- /dev/null
+++ b/Tests/RunCMake/if/duplicate-else-stderr.txt
@@ -0,0 +1,4 @@
+CMake Error at duplicate-else.cmake:[0-9]+ \(else\):
+ A duplicate ELSE command was found inside an IF block.
+Call Stack \(most recent call first\):
+ CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/if/duplicate-else.cmake b/Tests/RunCMake/if/duplicate-else.cmake
new file mode 100644
index 0000000..14a03ac
--- /dev/null
+++ b/Tests/RunCMake/if/duplicate-else.cmake
@@ -0,0 +1,4 @@
+if(0)
+else()
+else()
+endif()
diff --git a/Tests/RunCMake/if/misplaced-elseif-result.txt b/Tests/RunCMake/if/misplaced-elseif-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/if/misplaced-elseif-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/if/misplaced-elseif-stderr.txt b/Tests/RunCMake/if/misplaced-elseif-stderr.txt
new file mode 100644
index 0000000..c4b0266
--- /dev/null
+++ b/Tests/RunCMake/if/misplaced-elseif-stderr.txt
@@ -0,0 +1,4 @@
+CMake Error at misplaced-elseif.cmake:[0-9]+ \(elseif\):
+ An ELSEIF command was found after an ELSE command.
+Call Stack \(most recent call first\):
+ CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/if/misplaced-elseif.cmake b/Tests/RunCMake/if/misplaced-elseif.cmake
new file mode 100644
index 0000000..d27f24e
--- /dev/null
+++ b/Tests/RunCMake/if/misplaced-elseif.cmake
@@ -0,0 +1,4 @@
+if(0)
+else()
+elseif(1)
+endif()
-----------------------------------------------------------------------
Summary of changes:
Source/cmIfCommand.cxx | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list