From aa49d94ce06b3df1a87b62d49190ae81428b8d2a Mon Sep 17 00:00:00 2001 From: Brad King Date: Tue, 18 Dec 2001 14:55:11 -0500 Subject: [PATCH] ENH: Added error reporting for missing arguments to ENDIF. --- Source/cmIfCommand.cxx | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/Source/cmIfCommand.cxx b/Source/cmIfCommand.cxx index e25502e4f..ba5bdfb02 100644 --- a/Source/cmIfCommand.cxx +++ b/Source/cmIfCommand.cxx @@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. bool cmIfFunctionBlocker:: IsFunctionBlocked(const char *name, const std::vector &args, - cmMakefile &) + cmMakefile &mf) { if (!strcmp(name,"ELSE") || !strcmp(name,"ENDIF")) { @@ -51,6 +51,22 @@ IsFunctionBlocked(const char *name, const std::vector &args, { return false; } + else if(args.empty()) + { + std::string err = "Empty arguments for "; + err += name; + err += ". Did you mean "; + err += name; + err += "( "; + for(std::vector::const_iterator a = m_Args.begin(); + a != m_Args.end();++a) + { + err += *a; + err += " "; + } + err += ")?"; + cmSystemTools::Error(err.c_str()); + } } return true; }