| 1234567891011121314151617181920212223242526272829303132333435 |
- /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
- file Copyright.txt or https://cmake.org/licensing for details. */
- #include "cmContinueCommand.h"
- #include "cmExecutionStatus.h"
- #include "cmMakefile.h"
- #include "cmMessageType.h"
- #include "cmSystemTools.h"
- // cmContinueCommand
- bool cmContinueCommand(std::vector<std::string> const& args,
- cmExecutionStatus& status)
- {
- if (!status.GetMakefile().IsLoopBlock()) {
- status.GetMakefile().IssueMessage(
- MessageType::FATAL_ERROR,
- "A CONTINUE command was found outside of a "
- "proper FOREACH or WHILE loop scope.");
- cmSystemTools::SetFatalErrorOccurred();
- return true;
- }
- status.SetContinueInvoked();
- if (!args.empty()) {
- status.GetMakefile().IssueMessage(
- MessageType::FATAL_ERROR,
- "The CONTINUE command does not accept any "
- "arguments.");
- cmSystemTools::SetFatalErrorOccurred();
- return true;
- }
- return true;
- }
|