Standalone: Fix #1814: Check that linkage was specified for reflection.
This commit is contained in:
@@ -772,8 +772,17 @@ void ProcessArguments(std::vector<std::unique_ptr<glslang::TWorkItem>>& workItem
|
||||
Error("must provide -S when --stdin is given");
|
||||
|
||||
// Make sure that -E is not specified alongside linking (which includes SPV generation)
|
||||
if ((Options & EOptionOutputPreprocessed) && (Options & EOptionLinkProgram))
|
||||
Error("can't use -E when linking is selected");
|
||||
// Or things that require linking
|
||||
if (Options & EOptionOutputPreprocessed) {
|
||||
if (Options & EOptionLinkProgram)
|
||||
Error("can't use -E when linking is selected");
|
||||
if (Options & EOptionDumpReflection)
|
||||
Error("reflection requires linking, which can't be used when -E when is selected");
|
||||
}
|
||||
|
||||
// reflection requires linking
|
||||
if ((Options & EOptionDumpReflection) && !(Options & EOptionLinkProgram))
|
||||
Error("reflection requires -l for linking");
|
||||
|
||||
// -o or -x makes no sense if there is no target binary
|
||||
if (binaryFileName && (Options & EOptionSpv) == 0)
|
||||
@@ -1512,7 +1521,7 @@ void usage()
|
||||
" -l link all input files together to form a single module\n"
|
||||
" -m memory leak mode\n"
|
||||
" -o <file> save binary to <file>, requires a binary option (e.g., -V)\n"
|
||||
" -q dump reflection query database\n"
|
||||
" -q dump reflection query database; requires -l for linking\n"
|
||||
" -r | --relaxed-errors"
|
||||
" relaxed GLSL semantic error-checking mode\n"
|
||||
" -s silence syntax and semantic error reporting\n"
|
||||
|
||||
Reference in New Issue
Block a user