aboutsummaryrefslogtreecommitdiff
path: root/lib/compilers/argument-parsers.ts
diff options
context:
space:
mode:
authorpartouf <partouf@gmail.com>2023-05-12 23:11:21 +0200
committerpartouf <partouf@gmail.com>2023-05-12 23:11:21 +0200
commit36ed5a2f7602077dbc2da8f4d55cb442177d7b2e (patch)
tree3331c80341bfcb20aad9d5dfe411b5ac1387d8ab /lib/compilers/argument-parsers.ts
parent2f15ef464d232efe042311aee8ba306e0f1f8fa7 (diff)
downloadcompiler-explorer-gh-7376.tar.gz
compiler-explorer-gh-7376.zip
fix to bad cachinggh-7376
Diffstat (limited to 'lib/compilers/argument-parsers.ts')
-rw-r--r--lib/compilers/argument-parsers.ts15
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/compilers/argument-parsers.ts b/lib/compilers/argument-parsers.ts
index da92c59f9..53425e481 100644
--- a/lib/compilers/argument-parsers.ts
+++ b/lib/compilers/argument-parsers.ts
@@ -217,7 +217,13 @@ export class ClangParser extends BaseParser {
static mllvmOptions = new Set<string>();
static override setCompilerSettingsFromOptions(compiler, options) {
- logger.debug(`clang-like compiler options: ${_.keys(options).join(' ')}`);
+ const keys = _.keys(options);
+ logger.debug(`clang-like compiler options: ${keys.join(' ')}`);
+
+ if (keys.length === 0) {
+ logger.error(`compiler options appear empty for ${compiler.compiler.id}`);
+ }
+
if (this.hasSupport(options, '-fsave-optimization-record')) {
compiler.compiler.optArg = '-fsave-optimization-record';
compiler.compiler.supportsOptOutput = true;
@@ -321,7 +327,12 @@ export class ClangParser extends BaseParser {
const EXAMPLES_PATH = props.get('builtin', 'sourcePath', './examples/');
let filename = path.join(EXAMPLES_PATH, 'c++/default.cpp');
if (!path.isAbsolute(filename)) filename = path.join(process.cwd(), filename);
- const result = await compiler.execCompilerCached(compiler.compiler.exe, this.getStdVersHelpOptions(filename));
+ const result = await compiler.execCompilerCached(
+ compiler.compiler.exe,
+ this.getStdVersHelpOptions(filename),
+ undefined,
+ true,
+ );
if (result.stderr) {
const lines = utils.splitLines(result.stderr);