From 153caa9bf7cfb220d5be0e959363e336b6530b6c Mon Sep 17 00:00:00 2001 From: David Nadlinger Date: Sat, 16 Mar 2013 14:01:42 +0100 Subject: [PATCH] Print nice error message for wrong '-run' argument. This fixes DMD test case 'diag6743'. --- driver/main.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/driver/main.cpp b/driver/main.cpp index 0210fa83..3cc2fd68 100644 --- a/driver/main.cpp +++ b/driver/main.cpp @@ -306,7 +306,14 @@ int main(int argc, char** argv) // we're looking for it anyway, and pre-setting the flag... global.params.run = true; if (!runargs.empty()) { - files.push(mem.strdup(runargs[0].c_str())); + char const * name = runargs[0].c_str(); + char const * ext = FileName::ext(name); + if (ext && FileName::equals(ext, "d") == 0 && + FileName::equals(ext, "di") == 0) { + error("-run must be followed by a source file, not '%s'", name); + } + + files.push(mem.strdup(name)); runargs.erase(runargs.begin()); } else { global.params.run = false;