diff options
author | partouf <partouf@gmail.com> | 2023-05-12 23:11:21 +0200 |
---|---|---|
committer | partouf <partouf@gmail.com> | 2023-05-12 23:11:21 +0200 |
commit | 36ed5a2f7602077dbc2da8f4d55cb442177d7b2e (patch) | |
tree | 3331c80341bfcb20aad9d5dfe411b5ac1387d8ab /lib/compilers/argument-parsers.ts | |
parent | 2f15ef464d232efe042311aee8ba306e0f1f8fa7 (diff) | |
download | compiler-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.ts | 15 |
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); |