LOG("Missing argument to {}", args[i]);
return Statistic::bad_compiler_arguments;
}
- args_info.generating_diagnostics = true;
- args_info.output_dia = core::make_relative_path(ctx, args[i + 1]);
+ state.add_compiler_only_arg(args[i]);
+ state.add_compiler_only_arg_no_hash(args[i + 1]);
+ args_info.output_dia = args[i + 1];
i++;
return Statistic::none;
}
// -fcallgraph-info
bool generating_callgraphinfo = false;
- // Is the compiler being asked to generate diagnostics
- // (--serialize-diagnostics)?
- bool generating_diagnostics = false;
-
// Are we generating a pch file (msvc -Yc)?
bool generating_pch = false;
LOG("IPA clones file {} missing", ctx.args_info.output_ipa);
return false;
}
- if (ctx.args_info.generating_diagnostics
+ if (!ctx.args_info.output_dia.empty()
&& !serializer.add_file(core::result::FileType::diagnostic,
ctx.args_info.output_dia)) {
LOG("Diagnostics file {} missing", ctx.args_info.output_dia);
util::remove_nfs_safe(ctx.args_info.output_obj, util::LogFailure::no);
}
- if (ctx.args_info.generating_diagnostics) {
- args.push_back("--serialize-diagnostics");
- args.push_back(ctx.args_info.output_dia);
- }
-
if (ctx.args_info.seen_double_dash) {
args.push_back("--");
}
if (ctx.args_info.generating_callgraphinfo) {
LOG("Callgraph info file: {}", ctx.args_info.output_ci);
}
- if (ctx.args_info.generating_diagnostics) {
+ if (!ctx.args_info.output_dia.empty()) {
LOG("Diagnostics file: {}", ctx.args_info.output_dia);
}
if (!ctx.args_info.output_dwo.empty()) {
break;
case FileType::diagnostic:
- if (m_ctx.args_info.generating_diagnostics) {
- return m_ctx.args_info.output_dia;
- }
- break;
+ return m_ctx.args_info.output_dia;
case FileType::dwarf_object:
if (m_ctx.args_info.seen_split_dwarf