summaryrefslogtreecommitdiff
path: root/Source/cmMacroCommand.cxx
diff options
context:
space:
mode:
authorKen Martin <ken.martin@kitware.com>2003-04-28 13:16:18 -0400
committerKen Martin <ken.martin@kitware.com>2003-04-28 13:16:18 -0400
commit6b22b8c556d2f507f504f8a3e37d3b27a5ea3b19 (patch)
tree6547fa1455a2514e7d4d9c514389e67525984d9f /Source/cmMacroCommand.cxx
parentd5e46fa947faef40f170943b25f2705eebf0bfc2 (diff)
downloadcmake-6b22b8c556d2f507f504f8a3e37d3b27a5ea3b19.tar.gz
better error reporting
Diffstat (limited to 'Source/cmMacroCommand.cxx')
-rw-r--r--Source/cmMacroCommand.cxx10
1 files changed, 8 insertions, 2 deletions
diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx
index 230683ef3e..e445814fb5 100644
--- a/Source/cmMacroCommand.cxx
+++ b/Source/cmMacroCommand.cxx
@@ -107,9 +107,15 @@ ShouldRemove(const cmListFileFunction&, cmMakefile &)
}
void cmMacroFunctionBlocker::
-ScopeEnded(cmMakefile &)
+ScopeEnded(cmMakefile &mf)
{
- // macros never leave scope
+ // macros never leave scope but we should have seen the ENDMACRO call by now
+ if (m_Executing != true)
+ {
+ cmSystemTools::Error("The end of a CMakeLists file was reached with a MACRO statement that was not closed properly. Within the directory: ",
+ mf.GetCurrentDirectory(), " with macro ",
+ m_Args[0].c_str());
+ }
}
bool cmMacroCommand::InitialPass(std::vector<std::string> const& args)