aboutsummaryrefslogtreecommitdiff
path: root/compiler_wrapper
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-07-07 05:16:27 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-07-07 05:16:27 +0000
commitbdfb23116526e1f2d88aa215df41fbb5bc03071c (patch)
tree77dc031614745bb406dbd90cea9a082a1b5cdd54 /compiler_wrapper
parent21f97f3d38fe3137e87d15c8cd6ebe4586d3eb56 (diff)
parent40214b48188358a80b7478bfff21d4814dd9177c (diff)
downloadtoolchain-utils-android14-mainline-sdkext-release.tar.gz
Change-Id: Iee6e55e18ec64106c2d048da1bf8ee873017ba0d
Diffstat (limited to 'compiler_wrapper')
-rw-r--r--compiler_wrapper/README.md32
-rw-r--r--compiler_wrapper/android_config_test.go2
-rw-r--r--compiler_wrapper/bisect_flag.go2
-rw-r--r--compiler_wrapper/bisect_flag_test.go2
-rwxr-xr-xcompiler_wrapper/build.py178
-rw-r--r--compiler_wrapper/bundle.README2
-rwxr-xr-xcompiler_wrapper/bundle.py112
-rw-r--r--compiler_wrapper/ccache_flag.go9
-rw-r--r--compiler_wrapper/ccache_flag_test.go2
-rw-r--r--compiler_wrapper/clang_flags.go2
-rw-r--r--compiler_wrapper/clang_flags_test.go2
-rw-r--r--compiler_wrapper/clang_syntax_flag.go2
-rw-r--r--compiler_wrapper/clang_syntax_flag_test.go2
-rw-r--r--compiler_wrapper/clang_tidy_flag.go6
-rw-r--r--compiler_wrapper/clang_tidy_flag_test.go2
-rw-r--r--compiler_wrapper/command.go19
-rw-r--r--compiler_wrapper/command_test.go2
-rw-r--r--compiler_wrapper/compile_with_fallback.go2
-rw-r--r--compiler_wrapper/compile_with_fallback_test.go2
-rw-r--r--compiler_wrapper/compiler_wrapper.go24
-rw-r--r--compiler_wrapper/compiler_wrapper_test.go2
-rw-r--r--compiler_wrapper/config.go147
-rw-r--r--compiler_wrapper/config_test.go4
-rw-r--r--compiler_wrapper/crash_builds.go154
-rw-r--r--compiler_wrapper/crash_builds_test.go260
-rw-r--r--compiler_wrapper/cros_hardened_config_test.go2
-rw-r--r--compiler_wrapper/cros_host_config_test.go2
-rw-r--r--compiler_wrapper/cros_llvm_next_flags.go4
-rw-r--r--compiler_wrapper/cros_nonhardened_config_test.go2
-rw-r--r--compiler_wrapper/disable_werror_flag.go2
-rw-r--r--compiler_wrapper/disable_werror_flag_test.go2
-rw-r--r--compiler_wrapper/env.go2
-rw-r--r--compiler_wrapper/env_test.go2
-rw-r--r--compiler_wrapper/errors.go2
-rw-r--r--compiler_wrapper/errors_test.go2
-rw-r--r--compiler_wrapper/gcc_flags.go2
-rw-r--r--compiler_wrapper/gcc_flags_test.go2
-rw-r--r--compiler_wrapper/go_exec.go3
-rw-r--r--compiler_wrapper/goldenutil_test.go2
-rwxr-xr-xcompiler_wrapper/install_compiler_wrapper.sh33
-rw-r--r--compiler_wrapper/iwyu_flag.go156
-rw-r--r--compiler_wrapper/iwyu_flag_test.go135
-rw-r--r--compiler_wrapper/kernel_bug.go2
-rw-r--r--compiler_wrapper/kernel_bug_test.go2
-rw-r--r--compiler_wrapper/libc_exec.go3
-rw-r--r--compiler_wrapper/libgcc_flags.go2
-rw-r--r--compiler_wrapper/libgcc_flags_test.go2
-rw-r--r--compiler_wrapper/main.go2
-rw-r--r--compiler_wrapper/pie_flags.go43
-rw-r--r--compiler_wrapper/pie_flags_test.go84
-rw-r--r--compiler_wrapper/print_cmdline_flag.go2
-rw-r--r--compiler_wrapper/print_cmdline_flag_test.go2
-rw-r--r--compiler_wrapper/print_config_flag.go2
-rw-r--r--compiler_wrapper/print_config_flag_test.go2
-rw-r--r--compiler_wrapper/remote_build_flag_test.go2
-rw-r--r--compiler_wrapper/remote_build_flags.go2
-rwxr-xr-xcompiler_wrapper/reset_compiler_wrapper.sh2
-rw-r--r--compiler_wrapper/rusage_flag.go2
-rw-r--r--compiler_wrapper/rusage_flag_test.go2
-rw-r--r--compiler_wrapper/sanitizer_flags.go93
-rw-r--r--compiler_wrapper/sanitizer_flags_test.go42
-rw-r--r--compiler_wrapper/stackprotector_flags.go2
-rw-r--r--compiler_wrapper/stackprotector_flags_test.go2
-rw-r--r--compiler_wrapper/sysroot_flag.go2
-rw-r--r--compiler_wrapper/sysroot_flag_test.go2
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/bisect.json72
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json216
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_host_wrapper.json24
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json216
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json288
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json192
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json96
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json192
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json116
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/bisect.json72
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json216
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json216
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_path.json288
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json192
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json96
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json141
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json192
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json120
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json102
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json18
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json12
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json16
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json6
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json9
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json72
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json288
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json192
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/force_disable_werror.json120
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_clang_syntax.json102
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_path.json12
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json72
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json288
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json192
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json120
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json102
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_path.json12
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json54
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json162
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json162
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json216
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json144
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json72
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json109
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json144
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json90
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json72
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json1
-rw-r--r--compiler_wrapper/testutil_test.go2
-rw-r--r--compiler_wrapper/thumb_flags.go2
-rw-r--r--compiler_wrapper/thumb_flags_test.go2
-rw-r--r--compiler_wrapper/unsupported_flags.go2
-rw-r--r--compiler_wrapper/unsupported_flags_test.go2
-rw-r--r--compiler_wrapper/x64_flags.go2
-rw-r--r--compiler_wrapper/x64_flags_test.go2
119 files changed, 4236 insertions, 3313 deletions
diff --git a/compiler_wrapper/README.md b/compiler_wrapper/README.md
index 12ae3131..bb63798a 100644
--- a/compiler_wrapper/README.md
+++ b/compiler_wrapper/README.md
@@ -7,7 +7,7 @@ Build is split into 2 steps via separate commands:
- build: builds the actual go binary, assuming it is executed
from the folder created by `bundle.py`.
-This allows to copy the sources to a Chrome OS / Android
+This allows to copy the sources to a ChromeOS / Android
package, including the build script, and then
build from there without a dependency on toolchain-utils
itself.
@@ -24,7 +24,7 @@ Run `install_compiler_wrapper.sh` to install the new wrapper in the chroot:
Then perform the tests, e.g. build with the new compiler.
-## Updating the Wrapper for Chrome OS
+## Updating the Wrapper for ChromeOS
To update the wrapper for everyone, the new wrapper configuration must be copied
into chromiumos-overlay, and new revisions of the gcc and llvm ebuilds must be
@@ -73,3 +73,31 @@ Generated wrappers are stored here:
`/usr/bin/clang_host_wrapper`
- Gcc host wrapper:
`/usr/x86_64-pc-linux-gnu/gcc-bin/10.2.0/host_wrapper`
+
+## Using the compiler wrapper to crash arbitrary compilations
+
+When Clang crashes, its output can be extremely useful. Often, it will provide
+the user with a stack trace, and messages like:
+
+```
+clang-15: unable to execute command: Illegal instruction
+clang-15: note: diagnostic msg: /tmp/clang_crash_diagnostics/foo-5420d2.c
+clang-15: note: diagnostic msg: /tmp/clang_crash_diagnostics/foo-5420d2.sh
+```
+
+Where the artifacts at `/tmp/clang_crash_diagnostics/foo-*` are a full,
+self-contained reproducer of the inputs that caused the crash in question.
+Often, such a reproducer is very valuable to have even for cases where a crash
+_doesn't_ happen (e.g., maybe Clang is now emitting an error where it used to
+not do so, and we want to bisect upstream LLVM with that info). Normally,
+collecting and crafting such a reproducer is a multi-step process, and can be
+error-prone; compile commands may rely on env vars, they may be done within
+`chroot`s, they may rely on being executed in a particular directory, they may
+rely on intermediate state, etc.
+
+Because of the usefulness of these crash reports, our wrapper supports crashing
+Clang even on files that ordinarily don't cause Clang to crash. For various
+reasons (b/236736327), this support currently requires rebuilding and
+redeploying the wrapper in order to work. That said, this could be a valuable
+tool for devs interested in creating a self-contained reproducer without having
+to manually reproduce the environment in which a particular build was performed.
diff --git a/compiler_wrapper/android_config_test.go b/compiler_wrapper/android_config_test.go
index c61490f4..6c62c35a 100644
--- a/compiler_wrapper/android_config_test.go
+++ b/compiler_wrapper/android_config_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/bisect_flag.go b/compiler_wrapper/bisect_flag.go
index adfa8b03..2dc8daf2 100644
--- a/compiler_wrapper/bisect_flag.go
+++ b/compiler_wrapper/bisect_flag.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/bisect_flag_test.go b/compiler_wrapper/bisect_flag_test.go
index cc203a0f..2071a5b2 100644
--- a/compiler_wrapper/bisect_flag_test.go
+++ b/compiler_wrapper/bisect_flag_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/build.py b/compiler_wrapper/build.py
index f98b2549..930c2cfb 100755
--- a/compiler_wrapper/build.py
+++ b/compiler_wrapper/build.py
@@ -1,12 +1,11 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Copyright 2019 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Build script that builds a binary from a bundle."""
-from __future__ import print_function
import argparse
import os.path
@@ -16,87 +15,114 @@ import sys
def parse_args():
- parser = argparse.ArgumentParser()
- parser.add_argument(
- '--config',
- required=True,
- choices=['cros.hardened', 'cros.nonhardened', 'cros.host', 'android'])
- parser.add_argument('--use_ccache', required=True, choices=['true', 'false'])
- parser.add_argument(
- '--use_llvm_next', required=True, choices=['true', 'false'])
- parser.add_argument('--output_file', required=True, type=str)
- parser.add_argument(
- '--static',
- choices=['true', 'false'],
- help='If true, produce a static wrapper. Autodetects a good value if '
- 'unspecified.')
- args = parser.parse_args()
-
- if args.static is None:
- args.static = 'cros' not in args.config
- else:
- args.static = args.static == 'true'
-
- return args
+ parser = argparse.ArgumentParser()
+ parser.add_argument(
+ "--config",
+ required=True,
+ choices=["cros.hardened", "cros.nonhardened", "cros.host", "android"],
+ )
+ parser.add_argument(
+ "--use_ccache", required=True, choices=["true", "false"]
+ )
+ parser.add_argument(
+ "--version_suffix",
+ help="A string appended to the computed version of the wrapper. This "
+ "is appeneded directly without any delimiter.",
+ )
+ parser.add_argument(
+ "--use_llvm_next", required=True, choices=["true", "false"]
+ )
+ parser.add_argument("--output_file", required=True, type=str)
+ parser.add_argument(
+ "--static",
+ choices=["true", "false"],
+ help="If true, produce a static wrapper. Autodetects a good value if "
+ "unspecified.",
+ )
+ args = parser.parse_args()
+
+ if args.static is None:
+ args.static = "cros" not in args.config
+ else:
+ args.static = args.static == "true"
+
+ return args
def calc_go_args(args, version, build_dir):
- ldFlags = [
- '-X',
- 'main.ConfigName=' + args.config,
- '-X',
- 'main.UseCCache=' + args.use_ccache,
- '-X',
- 'main.UseLlvmNext=' + args.use_llvm_next,
- '-X',
- 'main.Version=' + version,
- ]
-
- # If the wrapper is intended for Chrome OS, we need to use libc's exec.
- extra_args = []
- if not args.static:
- extra_args += ['-tags', 'libc_exec']
-
- if args.config == 'android':
- # If android_llvm_next_flags.go DNE, we'll get an obscure "no
- # llvmNextFlags" build error; complaining here is clearer.
- if not os.path.exists(
- os.path.join(build_dir, 'android_llvm_next_flags.go')):
- sys.exit('In order to build the Android wrapper, you must have a local '
- 'android_llvm_next_flags.go file; please see '
- 'cros_llvm_next_flags.go.')
- extra_args += ['-tags', 'android_llvm_next_flags']
-
- return [
- 'go', 'build', '-o',
- os.path.abspath(args.output_file), '-ldflags', ' '.join(ldFlags)
- ] + extra_args
+ # These seem unnecessary, and might lead to breakages with Go's ldflag
+ # parsing. Don't allow them.
+ if "'" in version:
+ raise ValueError("`version` should not contain single quotes")
+
+ ldFlags = [
+ "-X",
+ "main.ConfigName=" + args.config,
+ "-X",
+ "main.UseCCache=" + args.use_ccache,
+ "-X",
+ "main.UseLlvmNext=" + args.use_llvm_next,
+ "-X",
+ # Quote this, as `version` may have spaces in it.
+ "'main.Version=" + version + "'",
+ ]
+
+ # If the wrapper is intended for ChromeOS, we need to use libc's exec.
+ extra_args = []
+ if not args.static:
+ extra_args += ["-tags", "libc_exec"]
+
+ if args.config == "android":
+ # If android_llvm_next_flags.go DNE, we'll get an obscure "no
+ # llvmNextFlags" build error; complaining here is clearer.
+ if not os.path.exists(
+ os.path.join(build_dir, "android_llvm_next_flags.go")
+ ):
+ sys.exit(
+ "In order to build the Android wrapper, you must have a local "
+ "android_llvm_next_flags.go file; please see "
+ "cros_llvm_next_flags.go."
+ )
+ extra_args += ["-tags", "android_llvm_next_flags"]
+
+ return [
+ "go",
+ "build",
+ "-o",
+ os.path.abspath(args.output_file),
+ "-ldflags",
+ " ".join(ldFlags),
+ ] + extra_args
def read_version(build_dir):
- version_path = os.path.join(build_dir, 'VERSION')
- if os.path.exists(version_path):
- with open(version_path, 'r') as r:
- return r.read()
+ version_path = os.path.join(build_dir, "VERSION")
+ if os.path.exists(version_path):
+ with open(version_path, "r") as r:
+ return r.read()
- last_commit_msg = subprocess.check_output(
- ['git', '-C', build_dir, 'log', '-1', '--pretty=%B'], encoding='utf-8')
- # Use last found change id to support reverts as well.
- change_ids = re.findall(r'Change-Id: (\w+)', last_commit_msg)
- if not change_ids:
- sys.exit("Couldn't find Change-Id in last commit message.")
- return change_ids[-1]
+ last_commit_msg = subprocess.check_output(
+ ["git", "-C", build_dir, "log", "-1", "--pretty=%B"], encoding="utf-8"
+ )
+ # Use last found change id to support reverts as well.
+ change_ids = re.findall(r"Change-Id: (\w+)", last_commit_msg)
+ if not change_ids:
+ sys.exit("Couldn't find Change-Id in last commit message.")
+ return change_ids[-1]
def main():
- args = parse_args()
- build_dir = os.path.dirname(__file__)
- version = read_version(build_dir)
- # Note: Go does not support using absolute package names.
- # So we run go inside the directory of the the build file.
- sys.exit(
- subprocess.call(calc_go_args(args, version, build_dir), cwd=build_dir))
-
-
-if __name__ == '__main__':
- main()
+ args = parse_args()
+ build_dir = os.path.dirname(__file__)
+ version = read_version(build_dir)
+ if args.version_suffix:
+ version += args.version_suffix
+ # Note: Go does not support using absolute package names.
+ # So we run go inside the directory of the the build file.
+ sys.exit(
+ subprocess.call(calc_go_args(args, version, build_dir), cwd=build_dir)
+ )
+
+
+if __name__ == "__main__":
+ main()
diff --git a/compiler_wrapper/bundle.README b/compiler_wrapper/bundle.README
index 10a28ee0..1ffaedd7 100644
--- a/compiler_wrapper/bundle.README
+++ b/compiler_wrapper/bundle.README
@@ -1,4 +1,4 @@
-Copyright 2019 The Chromium OS Authors. All rights reserved.
+Copyright 2019 The ChromiumOS Authors
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
diff --git a/compiler_wrapper/bundle.py b/compiler_wrapper/bundle.py
index 6df82146..90386c8f 100755
--- a/compiler_wrapper/bundle.py
+++ b/compiler_wrapper/bundle.py
@@ -1,12 +1,11 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Copyright 2019 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Build script that copies the go sources to a build destination."""
-from __future__ import print_function
import argparse
import os.path
@@ -17,67 +16,78 @@ import sys
def parse_args():
- parser = argparse.ArgumentParser()
- default_output_dir = os.path.normpath(
- os.path.join(
- os.path.dirname(os.path.realpath(__file__)),
- '../../chromiumos-overlay/sys-devel/llvm/files/compiler_wrapper'))
- parser.add_argument(
- '--output_dir',
- default=default_output_dir,
- help='Output directory to place bundled files (default: %(default)s)')
- parser.add_argument(
- '--create',
- action='store_true',
- help='Create output_dir if it does not already exist')
- return parser.parse_args()
+ parser = argparse.ArgumentParser()
+ default_output_dir = os.path.normpath(
+ os.path.join(
+ os.path.dirname(os.path.realpath(__file__)),
+ "../../chromiumos-overlay/sys-devel/llvm/files/compiler_wrapper",
+ )
+ )
+ parser.add_argument(
+ "--output_dir",
+ default=default_output_dir,
+ help="Output directory to place bundled files (default: %(default)s)",
+ )
+ parser.add_argument(
+ "--create",
+ action="store_true",
+ help="Create output_dir if it does not already exist",
+ )
+ return parser.parse_args()
def copy_files(input_dir, output_dir):
- for filename in os.listdir(input_dir):
- if ((filename.endswith('.go') and not filename.endswith('_test.go')) or
- filename in ('build.py', 'go.mod')):
- shutil.copy(
- os.path.join(input_dir, filename), os.path.join(output_dir, filename))
+ for filename in os.listdir(input_dir):
+ if (
+ filename.endswith(".go") and not filename.endswith("_test.go")
+ ) or filename in ("build.py", "go.mod"):
+ shutil.copy(
+ os.path.join(input_dir, filename),
+ os.path.join(output_dir, filename),
+ )
def read_change_id(input_dir):
- last_commit_msg = subprocess.check_output(
- ['git', '-C', input_dir, 'log', '-1', '--pretty=%B'], encoding='utf-8')
- # Use last found change id to support reverts as well.
- change_ids = re.findall(r'Change-Id: (\w+)', last_commit_msg)
- if not change_ids:
- sys.exit("Couldn't find Change-Id in last commit message.")
- return change_ids[-1]
+ last_commit_msg = subprocess.check_output(
+ ["git", "-C", input_dir, "log", "-1", "--pretty=%B"], encoding="utf-8"
+ )
+ # Use last found change id to support reverts as well.
+ change_ids = re.findall(r"Change-Id: (\w+)", last_commit_msg)
+ if not change_ids:
+ sys.exit("Couldn't find Change-Id in last commit message.")
+ return change_ids[-1]
def write_readme(input_dir, output_dir, change_id):
- with open(
- os.path.join(input_dir, 'bundle.README'), 'r', encoding='utf-8') as r:
- with open(os.path.join(output_dir, 'README'), 'w', encoding='utf-8') as w:
- content = r.read()
- w.write(content.format(change_id=change_id))
+ with open(
+ os.path.join(input_dir, "bundle.README"), "r", encoding="utf-8"
+ ) as r:
+ with open(
+ os.path.join(output_dir, "README"), "w", encoding="utf-8"
+ ) as w:
+ content = r.read()
+ w.write(content.format(change_id=change_id))
def write_version(output_dir, change_id):
- with open(os.path.join(output_dir, 'VERSION'), 'w', encoding='utf-8') as w:
- w.write(change_id)
+ with open(os.path.join(output_dir, "VERSION"), "w", encoding="utf-8") as w:
+ w.write(change_id)
def main():
- args = parse_args()
- input_dir = os.path.dirname(__file__)
- change_id = read_change_id(input_dir)
- if not args.create:
- assert os.path.exists(
- args.output_dir
- ), f'Specified output directory ({args.output_dir}) does not exist'
- shutil.rmtree(args.output_dir, ignore_errors=True)
- os.makedirs(args.output_dir)
- copy_files(input_dir, args.output_dir)
- write_readme(input_dir, args.output_dir, change_id)
- write_version(args.output_dir, change_id)
-
-
-if __name__ == '__main__':
- main()
+ args = parse_args()
+ input_dir = os.path.dirname(__file__)
+ change_id = read_change_id(input_dir)
+ if not args.create:
+ assert os.path.exists(
+ args.output_dir
+ ), f"Specified output directory ({args.output_dir}) does not exist"
+ shutil.rmtree(args.output_dir, ignore_errors=True)
+ os.makedirs(args.output_dir)
+ copy_files(input_dir, args.output_dir)
+ write_readme(input_dir, args.output_dir, change_id)
+ write_version(args.output_dir, change_id)
+
+
+if __name__ == "__main__":
+ main()
diff --git a/compiler_wrapper/ccache_flag.go b/compiler_wrapper/ccache_flag.go
index 02fb43ac..0371f10a 100644
--- a/compiler_wrapper/ccache_flag.go
+++ b/compiler_wrapper/ccache_flag.go
@@ -1,9 +1,14 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package main
+func isInConfigureStage(env env) bool {
+ val, present := env.getenv("EBUILD_PHASE")
+ return present && val == "configure"
+}
+
func processCCacheFlag(builder *commandBuilder) {
// We should be able to share the objects across compilers as
// the pre-processed output will differ. This allows boards
@@ -22,7 +27,7 @@ func processCCacheFlag(builder *commandBuilder) {
// Disable ccache during portage's src_configure phase. Using ccache here is generally a
// waste of time, since these files are very small. Experimentally, this speeds up
// configuring by ~13%.
- if val, present := builder.env.getenv("EBUILD_PHASE"); present && val == "configure" {
+ if isInConfigureStage(builder.env) {
useCCache = false
}
diff --git a/compiler_wrapper/ccache_flag_test.go b/compiler_wrapper/ccache_flag_test.go
index d6eeb926..330d1a1c 100644
--- a/compiler_wrapper/ccache_flag_test.go
+++ b/compiler_wrapper/ccache_flag_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/clang_flags.go b/compiler_wrapper/clang_flags.go
index e25ed74c..1c45935e 100644
--- a/compiler_wrapper/clang_flags.go
+++ b/compiler_wrapper/clang_flags.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/clang_flags_test.go b/compiler_wrapper/clang_flags_test.go
index 23aed7ef..08e8a8dc 100644
--- a/compiler_wrapper/clang_flags_test.go
+++ b/compiler_wrapper/clang_flags_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/clang_syntax_flag.go b/compiler_wrapper/clang_syntax_flag.go
index 53240c7f..4d5bd4d0 100644
--- a/compiler_wrapper/clang_syntax_flag.go
+++ b/compiler_wrapper/clang_syntax_flag.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/clang_syntax_flag_test.go b/compiler_wrapper/clang_syntax_flag_test.go
index 8ee9c223..728168c5 100644
--- a/compiler_wrapper/clang_syntax_flag_test.go
+++ b/compiler_wrapper/clang_syntax_flag_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/clang_tidy_flag.go b/compiler_wrapper/clang_tidy_flag.go
index 01387fd6..b19976d2 100644
--- a/compiler_wrapper/clang_tidy_flag.go
+++ b/compiler_wrapper/clang_tidy_flag.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -114,9 +114,7 @@ func runClangTidyForTricium(env env, clangCmd *command, cSrcFile, fixesDir strin
fixesFilePath := f.Name() + ".yaml"
fixesMetadataPath := f.Name() + ".json"
- // FIXME(gbiv): Remove `-checks=*` when testing is complete; we should defer to .clang-tidy
- // files, which are both more expressive and more approachable than `-checks=*`.
- extraTidyFlags = append(extraTidyFlags, "-checks=*", "--export-fixes="+fixesFilePath)
+ extraTidyFlags = append(extraTidyFlags, "--export-fixes="+fixesFilePath, "--header-filter=.*")
clangTidyCmd, err := calcClangTidyInvocation(env, clangCmd, cSrcFile, extraTidyFlags...)
if err != nil {
return fmt.Errorf("calculating tidy invocation: %v", err)
diff --git a/compiler_wrapper/clang_tidy_flag_test.go b/compiler_wrapper/clang_tidy_flag_test.go
index 4293bb21..73dec25f 100644
--- a/compiler_wrapper/clang_tidy_flag_test.go
+++ b/compiler_wrapper/clang_tidy_flag_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/command.go b/compiler_wrapper/command.go
index eb040b25..e2a5176d 100644
--- a/compiler_wrapper/command.go
+++ b/compiler_wrapper/command.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -76,7 +76,7 @@ func runCmdWithTimeout(env env, cmd *command, t time.Duration) error {
cmdCtx.Stderr = env.stderr()
if err := cmdCtx.Start(); err != nil {
- return newErrorwithSourceLocf("exec error: %v", err)
+ return fmt.Errorf("exec error: %w", err)
}
err := cmdCtx.Wait()
if ctx.Err() == nil {
@@ -265,6 +265,21 @@ func (builder *commandBuilder) transformArgs(transform func(arg builderArg) stri
builder.args = newArgs
}
+// Allows to filter arg pairs, useful for eg when having adjacent unsupported args
+// like "-Wl,-z -Wl,defs"
+func (builder *commandBuilder) filterArgPairs(keepPair func(arg1, arg2 builderArg) bool) {
+ newArgs := builder.args[:0]
+ for i := 0; i < len(builder.args); i++ {
+ if i == len(builder.args)-1 || keepPair(builder.args[i], builder.args[i+1]) {
+ newArgs = append(newArgs, builder.args[i])
+ } else {
+ // skip builder.args[i]) as well as next item
+ i++
+ }
+ }
+ builder.args = newArgs
+}
+
func (builder *commandBuilder) updateEnv(updates ...string) {
builder.envUpdates = append(builder.envUpdates, updates...)
}
diff --git a/compiler_wrapper/command_test.go b/compiler_wrapper/command_test.go
index 18d05a9c..031872c8 100644
--- a/compiler_wrapper/command_test.go
+++ b/compiler_wrapper/command_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/compile_with_fallback.go b/compiler_wrapper/compile_with_fallback.go
index 8b4b5b4d..d0b6a163 100644
--- a/compiler_wrapper/compile_with_fallback.go
+++ b/compiler_wrapper/compile_with_fallback.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/compile_with_fallback_test.go b/compiler_wrapper/compile_with_fallback_test.go
index f9da441a..67530a24 100644
--- a/compiler_wrapper/compile_with_fallback_test.go
+++ b/compiler_wrapper/compile_with_fallback_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/compiler_wrapper.go b/compiler_wrapper/compiler_wrapper.go
index 986eabab..dcaada99 100644
--- a/compiler_wrapper/compiler_wrapper.go
+++ b/compiler_wrapper/compiler_wrapper.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -151,6 +151,7 @@ func callCompilerInternal(env env, cfg *config, inputCmd *command) (exitCode int
}
} else {
cSrcFile, tidyFlags, tidyMode := processClangTidyFlags(mainBuilder)
+ cSrcFile, iwyuFlags, iwyuMode := processIWYUFlags(mainBuilder)
if mainBuilder.target.compilerType == clangType {
err := prepareClangCommand(mainBuilder)
if err != nil {
@@ -176,6 +177,20 @@ func callCompilerInternal(env env, cfg *config, inputCmd *command) (exitCode int
return 0, err
}
}
+
+ if iwyuMode != iwyuModeNone {
+ if iwyuMode == iwyuModeError {
+ panic(fmt.Sprintf("Unknown IWYU mode"))
+ }
+
+ allowCCache = false
+ clangCmdWithoutRemoteBuildAndCCache := mainBuilder.build()
+ err := runIWYU(env, clangCmdWithoutRemoteBuildAndCCache, cSrcFile, iwyuFlags)
+ if err != nil {
+ return 0, err
+ }
+ }
+
if remoteBuildUsed, err = processRemoteBuildAndCCacheFlags(allowCCache, mainBuilder); err != nil {
return 0, err
}
@@ -201,6 +216,12 @@ func callCompilerInternal(env env, cfg *config, inputCmd *command) (exitCode int
}
}
+ // If builds matching some heuristic should crash, crash them. Since this is purely a
+ // debugging tool, don't offer any nice features with it (e.g., rusage, ...).
+ if shouldUseCrashBuildsHeuristic && mainBuilder.target.compilerType == clangType {
+ return buildWithAutocrash(env, cfg, compilerCmd)
+ }
+
bisectStage := getBisectStage(env)
if rusageEnabled {
@@ -354,7 +375,6 @@ func calcCommonPreUserArgs(builder *commandBuilder) {
builder.addPreUserArgs(builder.cfg.commonFlags...)
if !builder.cfg.isHostWrapper {
processLibGCCFlags(builder)
- processPieFlags(builder)
processThumbCodeFlags(builder)
processStackProtectorFlags(builder)
processX86Flags(builder)
diff --git a/compiler_wrapper/compiler_wrapper_test.go b/compiler_wrapper/compiler_wrapper_test.go
index 74fe3f58..a560c9ca 100644
--- a/compiler_wrapper/compiler_wrapper_test.go
+++ b/compiler_wrapper/compiler_wrapper_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/config.go b/compiler_wrapper/config.go
index 6c28287c..6c3fcf52 100644
--- a/compiler_wrapper/config.go
+++ b/compiler_wrapper/config.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -34,7 +34,7 @@ type config struct {
triciumNitsDir string
// Directory to store crash artifacts in.
crashArtifactsDir string
- // Version. Only used for printing via -print-cmd.
+ // Version. Only exposed via -print-config.
version string
}
@@ -83,13 +83,13 @@ func getConfig(configName string, useCCache bool, useLlvmNext bool, version stri
cfg := config{}
switch configName {
case "cros.hardened":
- cfg = *crosHardenedConfig
+ cfg = crosHardenedConfig
case "cros.nonhardened":
- cfg = *crosNonHardenedConfig
+ cfg = crosNonHardenedConfig
case "cros.host":
- cfg = *crosHostConfig
+ cfg = crosHostConfig
case "android":
- cfg = *androidConfig
+ cfg = androidConfig
default:
return nil, newErrorwithSourceLocf("unknown config name: %s", configName)
}
@@ -103,9 +103,42 @@ func getConfig(configName string, useCCache bool, useLlvmNext bool, version stri
return &cfg, nil
}
+func crosCommonClangFlags() []string {
+ // Temporarily disable tautological-*-compare chromium:778316.
+ // Temporarily add no-unknown-warning-option to deal with old clang versions.
+ // Temporarily disable Wdeprecated-declarations. b/193860318
+ // b/230345382: Temporarily disable Wimplicit-function-declaration.
+ // b/231987783: Temporarily disable Wimplicit-int.
+ return []string{
+ "-Qunused-arguments",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
+ "-Wno-tautological-constant-compare",
+ "-Wno-tautological-unsigned-enum-zero-compare",
+ "-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ }
+}
+
+func crosCommonClangPostFlags() []string {
+ // Temporarily disable Wdeprecated-copy. b/191479033
+ return []string{
+ "-Wno-compound-token-split-by-space",
+ "-Wno-deprecated-copy",
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
+ }
+}
+
// Full hardening.
// Temporarily disable function splitting because of chromium:434751.
-var crosHardenedConfig = &config{
+var crosHardenedConfig = config{
clangRootRelPath: "../..",
gccRootRelPath: "../../../../..",
// Pass "-fcommon" till the packages are fixed to work with new clang/gcc
@@ -113,8 +146,6 @@ var crosHardenedConfig = &config{
commonFlags: []string{
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
},
@@ -123,46 +154,27 @@ var crosHardenedConfig = &config{
"-Wno-unused-local-typedefs",
"-Wno-maybe-uninitialized",
},
- // Temporarily disable tautological-*-compare chromium:778316.
- // Temporarily add no-unknown-warning-option to deal with old clang versions.
// Temporarily disable Wsection since kernel gets a bunch of these. chromium:778867
// Disable "-faddrsig" since it produces object files that strip doesn't understand, chromium:915742.
// crbug.com/1103065: -grecord-gcc-switches pollutes the Goma cache;
// removed that flag for now.
- // Temporarily disable Wdeprecated-declarations. b/193860318
-
- clangFlags: []string{
- "-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
- "-Wno-tautological-constant-compare",
- "-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-unknown-warning-option",
+ clangFlags: append(
+ crosCommonClangFlags(),
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
- },
-
- // Temporarily disable Wdeprecated-copy. b/191479033
- clangPostFlags: []string{
- "-Wno-implicit-int-float-conversion",
- "-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
- "-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable",
- },
+ "-ftrivial-auto-var-init=zero",
+ "-enable-trivial-auto-var-init-zero-knowing-it-will-be-removed-from-clang",
+ ),
+ clangPostFlags: crosCommonClangPostFlags(),
newWarningsDir: "/tmp/fatal_clang_warnings",
triciumNitsDir: "/tmp/linting_output/clang-tidy",
crashArtifactsDir: "/tmp/clang_crash_diagnostics",
}
// Flags to be added to non-hardened toolchain.
-var crosNonHardenedConfig = &config{
+var crosNonHardenedConfig = config{
clangRootRelPath: "../..",
gccRootRelPath: "../../../../..",
commonFlags: []string{},
@@ -172,39 +184,19 @@ var crosNonHardenedConfig = &config{
"-Wno-deprecated-declarations",
"-Wtrampolines",
},
- // Temporarily disable tautological-*-compare chromium:778316.
- // Temporarily add no-unknown-warning-option to deal with old clang versions.
// Temporarily disable Wsection since kernel gets a bunch of these. chromium:778867
- // Temporarily disable Wdeprecated-declarations. b/193860318
- clangFlags: []string{
- "-Qunused-arguments",
- "-fdebug-default-version=5",
- "-Wno-tautological-constant-compare",
- "-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-unknown-warning-option",
+ clangFlags: append(
+ crosCommonClangFlags(),
"-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
- },
-
- // Temporarily disable Wdeprecated-copy. b/191479033
- clangPostFlags: []string{
- "-Wno-implicit-int-float-conversion",
- "-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
- "-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable",
- },
+ ),
+ clangPostFlags: crosCommonClangPostFlags(),
newWarningsDir: "/tmp/fatal_clang_warnings",
triciumNitsDir: "/tmp/linting_output/clang-tidy",
crashArtifactsDir: "/tmp/clang_crash_diagnostics",
}
// Flags to be added to host toolchain.
-var crosHostConfig = &config{
+var crosHostConfig = config{
isHostWrapper: true,
clangRootRelPath: "../..",
gccRootRelPath: "../..",
@@ -218,41 +210,22 @@ var crosHostConfig = &config{
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
},
- // Temporarily disable tautological-*-compare chromium:778316.
- // Temporarily add no-unknown-warning-option to deal with old clang versions.
// crbug.com/1103065: -grecord-gcc-switches pollutes the Goma cache;
// removed that flag for now.
- // Temporarily disable Wdeprecated-declarations. b/193860318
- clangFlags: []string{
- "-Qunused-arguments",
+ clangFlags: append(
+ crosCommonClangFlags(),
+ "-Wno-unused-local-typedefs",
"-fno-addrsig",
"-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
- "-Wno-tautological-constant-compare",
- "-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-Wno-unknown-warning-option",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
- },
-
+ ),
// Temporarily disable Wdeprecated-copy. b/191479033
- clangPostFlags: []string{
- "-Wno-implicit-int-float-conversion",
- "-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
- "-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable",
- },
+ clangPostFlags: crosCommonClangPostFlags(),
newWarningsDir: "/tmp/fatal_clang_warnings",
triciumNitsDir: "/tmp/linting_output/clang-tidy",
crashArtifactsDir: "/tmp/clang_crash_diagnostics",
}
-var androidConfig = &config{
+var androidConfig = config{
isHostWrapper: false,
isAndroidWrapper: true,
gccRootRelPath: "./",
diff --git a/compiler_wrapper/config_test.go b/compiler_wrapper/config_test.go
index 86a78928..0e6b44c5 100644
--- a/compiler_wrapper/config_test.go
+++ b/compiler_wrapper/config_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -119,7 +119,7 @@ func TestRealConfigWithConfigNameFlag(t *testing.T) {
func isSysrootHardened(cfg *config) bool {
for _, arg := range cfg.commonFlags {
- if arg == "-pie" {
+ if arg == "-D_FORTIFY_SOURCE=2" {
return true
}
}
diff --git a/compiler_wrapper/crash_builds.go b/compiler_wrapper/crash_builds.go
new file mode 100644
index 00000000..76a5412a
--- /dev/null
+++ b/compiler_wrapper/crash_builds.go
@@ -0,0 +1,154 @@
+// Copyright 2022 The ChromiumOS Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package main
+
+import (
+ "bytes"
+ "fmt"
+ "io"
+ "regexp"
+)
+
+// ** HEY YOU, PERSON READING THIS! **
+//
+// Are you a dev who wants to make this work locally? Awesome! Please note that this **only** works
+// for Clang. If that's OK, here's a checklist for you:
+// [ ] Set `shouldUseCrashBuildsHeuristic = true` below.
+// [ ] If you want this heuristic to operate during `src_configure` (rare), also set
+// `allowAutoCrashInConfigure` to true.
+// [ ] Modify `shouldAutocrashPostExec` to return `true` when the compiler's output/flags match what
+// you want to crash on, and `false` otherwise.
+// [ ] Run `./install_compiler_wrapper.sh` to install the updated wrapper.
+// [ ] Run whatever command reproduces the error.
+//
+// If you need to make changes to your heuristic, repeat the above steps starting at
+// `./install_compiler_wrapper.sh` until things seem to do what you want.
+const (
+ // Set this to true to use autocrashing logic.
+ shouldUseCrashBuildsHeuristic = false
+ // Set this to true to allow `shouldAutocrashPostExec` to check+crash configure steps.
+ allowAutoCrashInConfigure = false
+)
+
+// shouldAutocrashPostExec returns true if we should automatically crash the compiler. This is
+// called after the compiler is run. If it returns true, we'll re-execute the compiler with the bit
+// of extra code necessary to crash it.
+func shouldAutocrashPostExec(env env, cfg *config, originalCmd *command, runInfo compilerExecInfo) bool {
+ // ** TODO, DEAR READER: ** Fill this in. Below are a few `if false {` blocks that should
+ // work for common use-cases. You're encouraged to change them to `if true {` if they suit
+ // your needs.
+
+ // Return true if `error: some error message` is contained in the run's stderr.
+ if false {
+ return bytes.Contains(runInfo.stderr, []byte("error: some error message"))
+ }
+
+ // Return true if `foo.c:${line_number}: error: some error message` appears in the run's
+ // stderr. Otherwise, return false.
+ if false {
+ r := regexp.MustCompile(`foo\.c:\d+: error: some error message`)
+ return r.Match(runInfo.stderr)
+ }
+
+ // Return true if there's a `-fjust-give-up` flag in the compiler's invocation.
+ if false {
+ for _, flag := range originalCmd.Args {
+ if flag == "-fjust-give-up" {
+ return true
+ }
+ }
+
+ return false
+ }
+
+ panic("Please fill in `shouldAutocrashPostExec` with meaningful logic.")
+}
+
+type compilerExecInfo struct {
+ exitCode int
+ stdout, stderr []byte
+}
+
+// ** Below here are implementation details. If all you want is autocrashing behavior, you don't
+// need to keep reading. **
+const (
+ autocrashProgramLine = "\n#pragma clang __debug parser_crash"
+)
+
+type buildWithAutocrashPredicates struct {
+ allowInConfigure bool
+ shouldAutocrash func(env, *config, *command, compilerExecInfo) bool
+}
+
+func buildWithAutocrash(env env, cfg *config, originalCmd *command) (exitCode int, err error) {
+ return buildWithAutocrashImpl(env, cfg, originalCmd, buildWithAutocrashPredicates{
+ allowInConfigure: allowAutoCrashInConfigure,
+ shouldAutocrash: shouldAutocrashPostExec,
+ })
+}
+
+func buildWithAutocrashImpl(env env, cfg *config, originalCmd *command, preds buildWithAutocrashPredicates) (exitCode int, err error) {
+ stdinBuffer := (*bytes.Buffer)(nil)
+ subprocStdin := io.Reader(nil)
+ invocationUsesStdinAsAFile := needStdinTee(originalCmd)
+ if invocationUsesStdinAsAFile {
+ stdinBuffer = &bytes.Buffer{}
+ if _, err := stdinBuffer.ReadFrom(env.stdin()); err != nil {
+ return 0, wrapErrorwithSourceLocf(err, "prebuffering stdin")
+ }
+ subprocStdin = stdinBuffer
+ } else {
+ subprocStdin = env.stdin()
+ }
+
+ stdoutBuffer := &bytes.Buffer{}
+ stderrBuffer := &bytes.Buffer{}
+ exitCode, err = wrapSubprocessErrorWithSourceLoc(originalCmd,
+ env.run(originalCmd, subprocStdin, stdoutBuffer, stderrBuffer))
+ if err != nil {
+ return 0, err
+ }
+
+ autocrashAllowed := preds.allowInConfigure || !isInConfigureStage(env)
+ crash := autocrashAllowed && preds.shouldAutocrash(env, cfg, originalCmd, compilerExecInfo{
+ exitCode: exitCode,
+ stdout: stdoutBuffer.Bytes(),
+ stderr: stderrBuffer.Bytes(),
+ })
+ if !crash {
+ stdoutBuffer.WriteTo(env.stdout())
+ stderrBuffer.WriteTo(env.stderr())
+ return exitCode, nil
+ }
+
+ fmt.Fprintln(env.stderr(), "** Autocrash requested; crashing the compiler...**")
+
+ // `stdinBuffer == nil` implies that `-` wasn't used as a flag. If `-` isn't used as a
+ // flag, clang will ignore stdin. We want to write our #pragma to stdin, since we can't
+ // reasonably modify the files we're currently compiling.
+ if stdinBuffer == nil {
+ newArgs := []string{}
+ // Clang can't handle `-o ${target}` when handed multiple input files. Since
+ // we expect to crash before emitting anything, remove `-o ${file}` entirely.
+ for i, e := 0, len(originalCmd.Args); i < e; i++ {
+ a := originalCmd.Args[i]
+ if a == "-o" {
+ // Skip the -o here, then skip the following arg in the loop header.
+ i++
+ } else {
+ newArgs = append(newArgs, a)
+ }
+ }
+ // And now add args that instruct clang to read from stdin. In this case, we also
+ // need to tell Clang what language the file is written in; C is as good as anything
+ // for this.
+ originalCmd.Args = append(newArgs, "-x", "c", "-")
+ stdinBuffer = &bytes.Buffer{}
+ }
+
+ stdinBuffer.WriteString(autocrashProgramLine)
+ return wrapSubprocessErrorWithSourceLoc(originalCmd,
+ env.run(originalCmd, stdinBuffer, env.stdout(), env.stderr()))
+}
diff --git a/compiler_wrapper/crash_builds_test.go b/compiler_wrapper/crash_builds_test.go
new file mode 100644
index 00000000..3d33d933
--- /dev/null
+++ b/compiler_wrapper/crash_builds_test.go
@@ -0,0 +1,260 @@
+// Copyright 2022 The ChromiumOS Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package main
+
+import (
+ "bytes"
+ "io"
+ "strings"
+ "testing"
+)
+
+func TestBuildWithAutoCrashDoesNothingIfCrashIsNotRequested(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ neverAutoCrash := buildWithAutocrashPredicates{
+ allowInConfigure: true,
+ shouldAutocrash: func(env, *config, *command, compilerExecInfo) bool {
+ return false
+ },
+ }
+
+ exitCode, err := buildWithAutocrashImpl(ctx, ctx.cfg, ctx.newCommand(clangX86_64, mainCc), neverAutoCrash)
+ if err != nil {
+ t.Fatalf("unexpectedly failed with %v", err)
+ }
+ ctx.must(exitCode)
+ if ctx.cmdCount != 1 {
+ t.Errorf("expected 1 call. Got: %d", ctx.cmdCount)
+ }
+ })
+}
+
+func TestBuildWithAutoCrashSkipsAutocrashLogicIfInConfigureAndConfigureChecksDisabled(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ alwaysAutocrash := buildWithAutocrashPredicates{
+ allowInConfigure: false,
+ shouldAutocrash: func(env, *config, *command, compilerExecInfo) bool {
+ return true
+ },
+ }
+
+ ctx.env = append(ctx.env, "EBUILD_PHASE=configure")
+ exitCode, err := buildWithAutocrashImpl(ctx, ctx.cfg, ctx.newCommand(clangX86_64, mainCc), alwaysAutocrash)
+ if err != nil {
+ t.Fatalf("unexpectedly failed with %v", err)
+ }
+ ctx.must(exitCode)
+ if ctx.cmdCount != 1 {
+ t.Errorf("expected 1 call. Got: %d", ctx.cmdCount)
+ }
+ })
+}
+
+func TestBuildWithAutoCrashRerunsIfPredicateRequestsCrash(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ autocrashPostCmd := buildWithAutocrashPredicates{
+ allowInConfigure: true,
+ shouldAutocrash: func(env, *config, *command, compilerExecInfo) bool {
+ return true
+ },
+ }
+
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ hasDash := false
+ for _, arg := range cmd.Args {
+ if arg == "-" {
+ hasDash = true
+ break
+ }
+ }
+
+ switch ctx.cmdCount {
+ case 1:
+ if hasDash {
+ t.Error("Got `-` on command 1; didn't want that.")
+ }
+ return nil
+ case 2:
+ if !hasDash {
+ t.Error("Didn't get `-` on command 2; wanted that.")
+ } else {
+ input := stdin.(*bytes.Buffer)
+ if s := input.String(); !strings.Contains(s, autocrashProgramLine) {
+ t.Errorf("Input was %q; expected %q to be in it", s, autocrashProgramLine)
+ }
+ }
+ return nil
+ default:
+ t.Fatalf("Unexpected command count: %d", ctx.cmdCount)
+ panic("Unreachable")
+ }
+ }
+
+ exitCode, err := buildWithAutocrashImpl(ctx, ctx.cfg, ctx.newCommand(clangX86_64, mainCc), autocrashPostCmd)
+ if err != nil {
+ t.Fatalf("unexpectedly failed with %v", err)
+ }
+ ctx.must(exitCode)
+
+ if ctx.cmdCount != 2 {
+ t.Errorf("expected 2 calls. Got: %d", ctx.cmdCount)
+ }
+ })
+}
+
+func TestBuildWithAutoCrashAddsDashAndWritesToStdinIfInputFileIsNotStdin(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ autocrashPostCmd := buildWithAutocrashPredicates{
+ allowInConfigure: true,
+ shouldAutocrash: func(env, *config, *command, compilerExecInfo) bool {
+ return true
+ },
+ }
+
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ numDashes := 0
+ for _, arg := range cmd.Args {
+ if arg == "-" {
+ numDashes++
+ }
+ }
+
+ switch ctx.cmdCount {
+ case 1:
+ if numDashes != 0 {
+ t.Errorf("Got %d dashes on command 1; want 0", numDashes)
+ }
+ return nil
+ case 2:
+ if numDashes != 1 {
+ t.Errorf("Got %d dashes on command 2; want 1", numDashes)
+ }
+
+ input := stdin.(*bytes.Buffer).String()
+ stdinHasAutocrashLine := strings.Contains(input, autocrashProgramLine)
+ if !stdinHasAutocrashLine {
+ t.Error("Got no autocrash line on the second command; wanted that")
+ }
+ return nil
+ default:
+ t.Fatalf("Unexpected command count: %d", ctx.cmdCount)
+ panic("Unreachable")
+ }
+ }
+
+ exitCode, err := buildWithAutocrashImpl(ctx, ctx.cfg, ctx.newCommand(clangX86_64, mainCc), autocrashPostCmd)
+ if err != nil {
+ t.Fatalf("unexpectedly failed with %v", err)
+ }
+ ctx.must(exitCode)
+
+ if ctx.cmdCount != 2 {
+ t.Errorf("expected 2 calls. Got: %d", ctx.cmdCount)
+ }
+ })
+}
+
+func TestBuildWithAutoCrashAppendsToStdinIfStdinIsTheOnlyInputFile(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ autocrashPostCmd := buildWithAutocrashPredicates{
+ allowInConfigure: true,
+ shouldAutocrash: func(env, *config, *command, compilerExecInfo) bool {
+ return true
+ },
+ }
+
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ numDashes := 0
+ for _, arg := range cmd.Args {
+ if arg == "-" {
+ numDashes++
+ }
+ }
+
+ if numDashes != 1 {
+ t.Errorf("Got %d dashes on command %d (args: %#v); want 1", numDashes, ctx.cmdCount, cmd.Args)
+ }
+
+ input := stdin.(*bytes.Buffer).String()
+ stdinHasAutocrashLine := strings.Contains(input, autocrashProgramLine)
+
+ switch ctx.cmdCount {
+ case 1:
+ if stdinHasAutocrashLine {
+ t.Error("Got autocrash line on the first command; did not want that")
+ }
+ return nil
+ case 2:
+ if !stdinHasAutocrashLine {
+ t.Error("Got no autocrash line on the second command; wanted that")
+ }
+ return nil
+ default:
+ t.Fatalf("Unexpected command count: %d", ctx.cmdCount)
+ panic("Unreachable")
+ }
+ }
+
+ exitCode, err := buildWithAutocrashImpl(ctx, ctx.cfg, ctx.newCommand(clangX86_64, "-x", "c", "-"), autocrashPostCmd)
+ if err != nil {
+ t.Fatalf("unexpectedly failed with %v", err)
+ }
+ ctx.must(exitCode)
+
+ if ctx.cmdCount != 2 {
+ t.Errorf("expected 2 calls. Got: %d", ctx.cmdCount)
+ }
+ })
+}
+
+func TestCrashBuildFiltersObjectFileOptionOnCrashes(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ autocrashPostCmd := buildWithAutocrashPredicates{
+ allowInConfigure: true,
+ shouldAutocrash: func(env, *config, *command, compilerExecInfo) bool {
+ return true
+ },
+ }
+
+ const outputFileName = "/path/to/foo.o"
+
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ cmdOutputArg := (*string)(nil)
+ for i, e := range cmd.Args {
+ if e == "-o" {
+ // Assume something follows. If not, we'll crash and the
+ // test will fail.
+ cmdOutputArg = &cmd.Args[i+1]
+ }
+ }
+
+ switch ctx.cmdCount {
+ case 1:
+ if cmdOutputArg == nil || *cmdOutputArg != outputFileName {
+ t.Errorf("Got command args %q; want `-o %q` in them", cmd.Args, outputFileName)
+ }
+ return nil
+ case 2:
+ if cmdOutputArg != nil {
+ t.Errorf("Got command args %q; want no mention of `-o %q` in them", cmd.Args, outputFileName)
+ }
+ return nil
+ default:
+ t.Fatalf("Unexpected command count: %d", ctx.cmdCount)
+ panic("Unreachable")
+ }
+ }
+
+ exitCode, err := buildWithAutocrashImpl(ctx, ctx.cfg, ctx.newCommand(clangX86_64, "-o", outputFileName, mainCc), autocrashPostCmd)
+ if err != nil {
+ t.Fatalf("unexpectedly failed with %v", err)
+ }
+ ctx.must(exitCode)
+
+ if ctx.cmdCount != 2 {
+ t.Errorf("expected 2 calls. Got: %d", ctx.cmdCount)
+ }
+ })
+}
diff --git a/compiler_wrapper/cros_hardened_config_test.go b/compiler_wrapper/cros_hardened_config_test.go
index 337b27fe..80a261c8 100644
--- a/compiler_wrapper/cros_hardened_config_test.go
+++ b/compiler_wrapper/cros_hardened_config_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/cros_host_config_test.go b/compiler_wrapper/cros_host_config_test.go
index 4f3b5cb2..4eb9027c 100644
--- a/compiler_wrapper/cros_host_config_test.go
+++ b/compiler_wrapper/cros_host_config_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/cros_llvm_next_flags.go b/compiler_wrapper/cros_llvm_next_flags.go
index 870e2885..4b21ad3d 100644
--- a/compiler_wrapper/cros_llvm_next_flags.go
+++ b/compiler_wrapper/cros_llvm_next_flags.go
@@ -1,4 +1,4 @@
-// Copyright 2020 The Chromium OS Authors. All rights reserved.
+// Copyright 2020 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -7,7 +7,7 @@
package main
-// This file defines extra flags for llvm-next testing for Chrome OS. Importantly, these flags don't
+// This file defines extra flags for llvm-next testing for ChromeOS. Importantly, these flags don't
// apply to Android's llvm-next wrapper. Android's toolchain-utils copy has a
// `android_llvm_next_flags.go` file downstream that defines its llvm-next arguments. As you can
// probably infer, `android_llvm_next_flags.go` is only compiled if the `android_llvm_next_flags`
diff --git a/compiler_wrapper/cros_nonhardened_config_test.go b/compiler_wrapper/cros_nonhardened_config_test.go
index 3d413fb8..9428254e 100644
--- a/compiler_wrapper/cros_nonhardened_config_test.go
+++ b/compiler_wrapper/cros_nonhardened_config_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/disable_werror_flag.go b/compiler_wrapper/disable_werror_flag.go
index cb770b7b..17077671 100644
--- a/compiler_wrapper/disable_werror_flag.go
+++ b/compiler_wrapper/disable_werror_flag.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/disable_werror_flag_test.go b/compiler_wrapper/disable_werror_flag_test.go
index 592c35ba..d3be921d 100644
--- a/compiler_wrapper/disable_werror_flag_test.go
+++ b/compiler_wrapper/disable_werror_flag_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/env.go b/compiler_wrapper/env.go
index c8f6ceb3..6b25d960 100644
--- a/compiler_wrapper/env.go
+++ b/compiler_wrapper/env.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/env_test.go b/compiler_wrapper/env_test.go
index b5bf65a3..6b00a8b5 100644
--- a/compiler_wrapper/env_test.go
+++ b/compiler_wrapper/env_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/errors.go b/compiler_wrapper/errors.go
index 18e0facf..30a9ffda 100644
--- a/compiler_wrapper/errors.go
+++ b/compiler_wrapper/errors.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/errors_test.go b/compiler_wrapper/errors_test.go
index 957fae3a..096ae373 100644
--- a/compiler_wrapper/errors_test.go
+++ b/compiler_wrapper/errors_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/gcc_flags.go b/compiler_wrapper/gcc_flags.go
index 2c553e6b..01f7a3c2 100644
--- a/compiler_wrapper/gcc_flags.go
+++ b/compiler_wrapper/gcc_flags.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/gcc_flags_test.go b/compiler_wrapper/gcc_flags_test.go
index adf72018..45ad8668 100644
--- a/compiler_wrapper/gcc_flags_test.go
+++ b/compiler_wrapper/gcc_flags_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/go_exec.go b/compiler_wrapper/go_exec.go
index 2f2e5ad9..88335052 100644
--- a/compiler_wrapper/go_exec.go
+++ b/compiler_wrapper/go_exec.go
@@ -1,7 +1,8 @@
-// Copyright 2020 The Chromium OS Authors. All rights reserved.
+// Copyright 2020 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+//go:build !libc_exec
// +build !libc_exec
package main
diff --git a/compiler_wrapper/goldenutil_test.go b/compiler_wrapper/goldenutil_test.go
index 2b391d73..16e2b7e7 100644
--- a/compiler_wrapper/goldenutil_test.go
+++ b/compiler_wrapper/goldenutil_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/install_compiler_wrapper.sh b/compiler_wrapper/install_compiler_wrapper.sh
index 3a5b7417..81459082 100755
--- a/compiler_wrapper/install_compiler_wrapper.sh
+++ b/compiler_wrapper/install_compiler_wrapper.sh
@@ -1,6 +1,6 @@
#!/bin/bash
#
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Copyright 2020 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
@@ -11,18 +11,41 @@ if [[ ! -e /etc/cros_chroot_version ]]; then
exit 1
fi
set -e
+
+# Use a unique value here, since folks doing wrapper dev _likely_ want builds
+# to always be redone.
+version_suffix="manually_installed_wrapper_at_unix_$(date +%s.%6N)"
+echo "Using toolchain hash: ${version_suffix}"
cd "$(dirname "$(readlink -m "$0")")"
+
+build_py() {
+ ./build.py --version_suffix="${version_suffix}" "$@"
+}
+
echo "Updated files:"
# Update the host wrapper
-./build.py --config=cros.host --use_ccache=false --use_llvm_next=false --output_file=./clang_host_wrapper
+build_py \
+ --config=cros.host \
+ --use_ccache=false \
+ --use_llvm_next=false \
+ --output_file=./clang_host_wrapper
sudo mv ./clang_host_wrapper /usr/bin/clang_host_wrapper
echo "/usr/bin/clang_host_wrapper"
sudo cp ../binary_search_tool/bisect_driver.py /usr/bin
echo "/usr/bin/clang_host_wrapper/bisect_driver.py"
# Update the target wrappers
-./build.py --config=cros.hardened --use_ccache=false --use_llvm_next=false --output_file=./sysroot_wrapper.hardened.noccache
-./build.py --config=cros.hardened --use_ccache=true --use_llvm_next=false --output_file=./sysroot_wrapper.hardened.ccache
+build_py \
+ --config=cros.hardened \
+ --use_ccache=false \
+ --use_llvm_next=false \
+ --output_file=./sysroot_wrapper.hardened.noccache
+build_py \
+ --config=cros.hardened \
+ --use_ccache=true \
+ --use_llvm_next=false \
+ --output_file=./sysroot_wrapper.hardened.ccache
+
# Update clang target wrappers.
sudo cp ./sysroot_wrapper.hardened.noccache ./sysroot_wrapper.hardened.ccache /usr/bin
echo "Updated clang wrapper /usr/bin/sysroot_wrapper.hardened.noccache"
@@ -30,7 +53,7 @@ echo "Updated clang wrapper /usr/bin/sysroot_wrapper.hardened.ccache"
# Update GCC target wrappers.
for GCC in cross-x86_64-cros-linux-gnu/gcc cross-armv7a-cros-linux-gnueabihf/gcc cross-aarch64-cros-linux-gnu/gcc; do
- if ! FILES="$(equery f ${GCC})"; then
+ if ! FILES="$(equery f "${GCC}")"; then
if [[ $(equery l "${GCC}" 2>&1 | wc -c) -eq 0 ]]; then
echo "no ${GCC} package found; skipping" >&2
continue
diff --git a/compiler_wrapper/iwyu_flag.go b/compiler_wrapper/iwyu_flag.go
new file mode 100644
index 00000000..d13d114d
--- /dev/null
+++ b/compiler_wrapper/iwyu_flag.go
@@ -0,0 +1,156 @@
+// Copyright 2022 The ChromiumOS Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package main
+
+import (
+ "bufio"
+ "bytes"
+ "fmt"
+ "path/filepath"
+ "strings"
+)
+
+type useIWYUMode int
+
+const iwyuCrashSubstring = "PLEASE submit a bug report"
+
+const (
+ iwyuModeNone useIWYUMode = iota
+ iwyuModeAll
+ iwyuModeError
+)
+
+var srcFileSuffixes = []string{
+ ".c",
+ ".cc",
+ ".cpp",
+ ".C",
+ ".cxx",
+ ".c++",
+}
+
+func findWithIWYUFlag(args []builderArg) (string, []builderArg) {
+ for i := range args {
+ if args[i].value == "--with-iwyu" {
+ args = append(args[:i], args[i+1:]...)
+ return "1", args
+ }
+ }
+ return "", args
+}
+
+func processIWYUFlags(builder *commandBuilder) (cSrcFile string, iwyuFlags []string, mode useIWYUMode) {
+ builder.transformArgs(func(arg builderArg) string {
+ const prefix = "-iwyu-flag="
+ if !strings.HasPrefix(arg.value, prefix) {
+ return arg.value
+ }
+
+ iwyuFlags = append(iwyuFlags, arg.value[len(prefix):])
+ return ""
+ })
+
+ cSrcFile = ""
+ lastArg := ""
+ for _, arg := range builder.args {
+ if lastArg != "-o" {
+ for _, suffix := range srcFileSuffixes {
+ if strings.HasSuffix(arg.value, suffix) {
+ cSrcFile = arg.value
+ break
+ }
+ }
+ }
+ lastArg = arg.value
+ }
+
+ if cSrcFile == "" {
+ return "", iwyuFlags, iwyuModeNone
+ }
+
+ withIWYU, _ := builder.env.getenv("WITH_IWYU")
+ if withIWYU == "" {
+ withIWYU, builder.args = findWithIWYUFlag(builder.args)
+ if withIWYU == "" {
+ return cSrcFile, iwyuFlags, iwyuModeNone
+ }
+ }
+
+ if withIWYU != "1" {
+ return cSrcFile, iwyuFlags, iwyuModeError
+ }
+
+ return cSrcFile, iwyuFlags, iwyuModeAll
+}
+
+func calcIWYUInvocation(env env, clangCmd *command, cSrcFile string, iwyuFlags ...string) (*command, error) {
+ resourceDir, err := getClangResourceDir(env, clangCmd.Path)
+ if err != nil {
+ return nil, err
+ }
+
+ iwyuPath := filepath.Join(filepath.Dir(clangCmd.Path), "include-what-you-use")
+ args := append([]string{}, iwyuFlags...)
+ args = append(args, "-resource-dir="+resourceDir)
+ args = append(args, clangCmd.Args...)
+
+ for i := 0; i < len(args); i++ {
+ for j := 0; j < len(srcFileSuffixes); j++ {
+ if strings.HasSuffix(args[i], srcFileSuffixes[j]) {
+ args = append(args[:i], args[i+1:]...)
+ break
+ }
+ }
+ }
+ args = append(args, cSrcFile)
+
+ return &command{
+ Path: iwyuPath,
+ Args: args,
+ EnvUpdates: clangCmd.EnvUpdates,
+ }, nil
+}
+
+func runIWYU(env env, clangCmd *command, cSrcFile string, extraIWYUFlags []string) error {
+ extraIWYUFlags = append(extraIWYUFlags, "-Xiwyu", "--mapping_file=/usr/share/include-what-you-use/libcxx.imp", "-Xiwyu", "--no_fwd_decls")
+ iwyuCmd, err := calcIWYUInvocation(env, clangCmd, cSrcFile, extraIWYUFlags...)
+ if err != nil {
+ return fmt.Errorf("calculating include-what-you-use invocation: %v", err)
+ }
+
+ // Note: We pass nil as stdin as we checked before that the compiler
+ // was invoked with a source file argument.
+ var stderr bytes.Buffer
+ stderrWriter := bufio.NewWriter(&stderr)
+ exitCode, err := wrapSubprocessErrorWithSourceLoc(iwyuCmd,
+ env.run(iwyuCmd, nil, nil, stderrWriter))
+ stderrMessage := stderr.String()
+ fmt.Fprintln(env.stderr(), stderrMessage)
+
+ if err == nil && exitCode != 0 {
+ // Note: We continue on purpose when include-what-you-use fails
+ // to maintain compatibility with the previous wrapper.
+ fmt.Fprintln(env.stderr(), "include-what-you-use failed")
+ }
+
+ var path strings.Builder
+ path.WriteString(strings.TrimSuffix(iwyuCmd.Path, "include-what-you-use"))
+ path.WriteString("fix_includes.py")
+ fixIncludesCmd := &command{
+ Path: path.String(),
+ Args: []string{"--nocomment"},
+ EnvUpdates: clangCmd.EnvUpdates,
+ }
+
+ exitCode, err = wrapSubprocessErrorWithSourceLoc(fixIncludesCmd,
+ env.run(fixIncludesCmd, strings.NewReader(stderrMessage), env.stdout(), env.stderr()))
+ if err == nil && exitCode != 0 {
+ // Note: We continue on purpose when include-what-you-use fails
+ // to maintain compatibility with the previous wrapper.
+ fmt.Fprint(env.stderr(), "include-what-you-use failed")
+ }
+
+ return err
+}
diff --git a/compiler_wrapper/iwyu_flag_test.go b/compiler_wrapper/iwyu_flag_test.go
new file mode 100644
index 00000000..76135944
--- /dev/null
+++ b/compiler_wrapper/iwyu_flag_test.go
@@ -0,0 +1,135 @@
+// Copyright 2022 The ChromiumOS Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package main
+
+import (
+ "errors"
+ "io"
+ "strings"
+ "testing"
+)
+
+func TestIWYUArgOrder(t *testing.T) {
+ withIWYUTestContext(t, func(ctx *testContext) {
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ if ctx.cmdCount == 2 {
+ if err := verifyArgOrder(cmd, "-checks=.*", mainCc, "--", "-resource-dir=.*", mainCc, "--some_arg"); err != nil {
+ return err
+ }
+ }
+ return nil
+ }
+ ctx.must(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(clangX86_64, mainCc, "--some_arg")))
+ if ctx.cmdCount < 2 {
+ t.Error("expected multiple calls.")
+ }
+ })
+}
+
+func TestIgnoreNonZeroExitCodeFromIWYU(t *testing.T) {
+ withIWYUTestContext(t, func(ctx *testContext) {
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ if ctx.cmdCount == 2 {
+ return newExitCodeError(23)
+ }
+ return nil
+ }
+ ctx.must(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(clangX86_64, mainCc)))
+ stderr := ctx.stderrString()
+ if err := verifyNonInternalError(stderr, "include-what-you-use failed"); err != nil {
+ t.Error(err)
+ }
+ })
+}
+
+func TestReportGeneralErrorsFromIWYU(t *testing.T) {
+ withIWYUTestContext(t, func(ctx *testContext) {
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ if ctx.cmdCount > 1 {
+ return errors.New("someerror")
+ }
+ return nil
+ }
+ stderr := ctx.mustFail(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(clangX86_64, mainCc)))
+ if err := verifyInternalError(stderr); err != nil {
+ t.Fatal(err)
+ }
+ if !strings.Contains(stderr, "someerror") {
+ t.Errorf("unexpected error. Got: %s", stderr)
+ }
+ })
+}
+
+func TestUseIWYUBasedOnFileExtension(t *testing.T) {
+ withIWYUTestContext(t, func(ctx *testContext) {
+ testData := []struct {
+ args []string
+ iwyu bool
+ }{
+ {[]string{"main.cc"}, true},
+ {[]string{"main.cc"}, true},
+ {[]string{"main.C"}, true},
+ {[]string{"main.cxx"}, true},
+ {[]string{"main.c++"}, true},
+ {[]string{"main.xy"}, false},
+ {[]string{"-o", "main.cc"}, false},
+ {[]string{}, false},
+ }
+ for _, tt := range testData {
+ ctx.cmdCount = 0
+ ctx.must(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(clangX86_64, tt.args...)))
+ if ctx.cmdCount > 1 && !tt.iwyu {
+ t.Errorf("expected a call to iwyu but got none for args %s", tt.args)
+ }
+ if ctx.cmdCount == 1 && tt.iwyu {
+ t.Errorf("expected no call to iwyu but got one for args %s", tt.args)
+ }
+ }
+ })
+}
+
+func TestIWYUFiltersIWYUFlags(t *testing.T) {
+ withIWYUTestContext(t, func(ctx *testContext) {
+ addedFlag := "--some_iwyu_flag=flag"
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ switch ctx.cmdCount {
+ case 1:
+ if err := verifyPath(cmd, "usr/bin/clang"); err != nil {
+ t.Error(err)
+ } else if err := verifyArgCount(cmd, 0, addedFlag); err != nil {
+ t.Error(err)
+ }
+ return nil
+ case 2:
+ if err := verifyPath(cmd, "usr/bin/include-what-you-use"); err != nil {
+ t.Error(err)
+ } else if verifyArgCount(cmd, 1, addedFlag); err != nil {
+ t.Error(err)
+ }
+ return nil
+ default:
+ return nil
+ }
+ }
+ cmd := ctx.must(callCompiler(ctx, ctx.cfg, ctx.newCommand(clangX86_64, mainCc, "-iwyu-flag="+addedFlag)))
+ if ctx.cmdCount < 2 {
+ t.Errorf("expected multiple calls.")
+ }
+ if err := verifyPath(cmd, "usr/bin/clang"); err != nil {
+ t.Error(err)
+ }
+ })
+}
+
+func withIWYUTestContext(t *testing.T, work func(ctx *testContext)) {
+ withTestContext(t, func(ctx *testContext) {
+ ctx.env = []string{"WITH_IWYU=1"}
+ work(ctx)
+ })
+}
diff --git a/compiler_wrapper/kernel_bug.go b/compiler_wrapper/kernel_bug.go
index 55817cb6..857dae01 100644
--- a/compiler_wrapper/kernel_bug.go
+++ b/compiler_wrapper/kernel_bug.go
@@ -1,4 +1,4 @@
-// Copyright 2021 The Chromium OS Authors. All rights reserved.
+// Copyright 2021 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package main
diff --git a/compiler_wrapper/kernel_bug_test.go b/compiler_wrapper/kernel_bug_test.go
index 3c7bccf1..3b363847 100644
--- a/compiler_wrapper/kernel_bug_test.go
+++ b/compiler_wrapper/kernel_bug_test.go
@@ -1,4 +1,4 @@
-// Copyright 2021 The Chromium OS Authors. All rights reserved.
+// Copyright 2021 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package main
diff --git a/compiler_wrapper/libc_exec.go b/compiler_wrapper/libc_exec.go
index a7a561bc..e4bcad8e 100644
--- a/compiler_wrapper/libc_exec.go
+++ b/compiler_wrapper/libc_exec.go
@@ -1,7 +1,8 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+//go:build libc_exec
// +build libc_exec
package main
diff --git a/compiler_wrapper/libgcc_flags.go b/compiler_wrapper/libgcc_flags.go
index 72fa8381..a87223e0 100644
--- a/compiler_wrapper/libgcc_flags.go
+++ b/compiler_wrapper/libgcc_flags.go
@@ -1,4 +1,4 @@
-// Copyright 2021 The Chromium OS Authors. All rights reserved.
+// Copyright 2021 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/libgcc_flags_test.go b/compiler_wrapper/libgcc_flags_test.go
index 717c0e52..d30bf737 100644
--- a/compiler_wrapper/libgcc_flags_test.go
+++ b/compiler_wrapper/libgcc_flags_test.go
@@ -1,4 +1,4 @@
-// Copyright 2021 The Chromium OS Authors. All rights reserved.
+// Copyright 2021 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/main.go b/compiler_wrapper/main.go
index 046cf5a5..8cfa4364 100644
--- a/compiler_wrapper/main.go
+++ b/compiler_wrapper/main.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/pie_flags.go b/compiler_wrapper/pie_flags.go
deleted file mode 100644
index 9675f6ee..00000000
--- a/compiler_wrapper/pie_flags.go
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package main
-
-func processPieFlags(builder *commandBuilder) {
- fpieMap := map[string]bool{"-D__KERNEL__": true, "-fPIC": true, "-fPIE": true, "-fno-PIC": true, "-fno-PIE": true,
- "-fno-pic": true, "-fno-pie": true, "-fpic": true, "-fpie": true, "-nopie": true,
- "-nostartfiles": true, "-nostdlib": true, "-pie": true, "-static": true}
-
- pieMap := map[string]bool{"-D__KERNEL__": true, "-A": true, "-fno-PIC": true, "-fno-PIE": true, "-fno-pic": true, "-fno-pie": true,
- "-nopie": true, "-nostartfiles": true, "-nostdlib": true, "-pie": true, "-r": true, "--shared": true,
- "-shared": true, "-static": true}
-
- pie := false
- fpie := false
- if builder.target.abi != "eabi" {
- for _, arg := range builder.args {
- if arg.fromUser {
- if fpieMap[arg.value] {
- fpie = true
- }
- if pieMap[arg.value] {
- pie = true
- }
- }
- }
- }
- builder.transformArgs(func(arg builderArg) string {
- // Remove -nopie as it is a non-standard flag.
- if arg.value == "-nopie" {
- return ""
- }
- if fpie && !arg.fromUser && arg.value == "-fPIE" {
- return ""
- }
- if pie && !arg.fromUser && arg.value == "-pie" {
- return ""
- }
- return arg.value
- })
-}
diff --git a/compiler_wrapper/pie_flags_test.go b/compiler_wrapper/pie_flags_test.go
deleted file mode 100644
index 77a0fc8f..00000000
--- a/compiler_wrapper/pie_flags_test.go
+++ /dev/null
@@ -1,84 +0,0 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package main
-
-import (
- "testing"
-)
-
-func TestAddPieFlags(t *testing.T) {
- withTestContext(t, func(ctx *testContext) {
- initPieConfig(ctx.cfg)
- cmd := ctx.must(callCompiler(ctx, ctx.cfg,
- ctx.newCommand(gccX86_64, mainCc)))
- if err := verifyArgOrder(cmd, "-pie", mainCc); err != nil {
- t.Error(err)
- }
- if err := verifyArgOrder(cmd, "-fPIE", mainCc); err != nil {
- t.Error(err)
- }
- })
-}
-
-func TestOmitPieFlagsWhenNoPieArgGiven(t *testing.T) {
- withTestContext(t, func(ctx *testContext) {
- initPieConfig(ctx.cfg)
- cmd := ctx.must(callCompiler(ctx, ctx.cfg,
- ctx.newCommand(gccX86_64, "-nopie", mainCc)))
- if err := verifyArgCount(cmd, 0, "-nopie"); err != nil {
- t.Error(err)
- }
- if err := verifyArgCount(cmd, 0, "-pie"); err != nil {
- t.Error(err)
- }
- if err := verifyArgCount(cmd, 0, "-fPIE"); err != nil {
- t.Error(err)
- }
-
- cmd = ctx.must(callCompiler(ctx, ctx.cfg,
- ctx.newCommand(gccX86_64, "-fno-pie", mainCc)))
- if err := verifyArgCount(cmd, 0, "-pie"); err != nil {
- t.Error(err)
- }
- if err := verifyArgCount(cmd, 0, "-fPIE"); err != nil {
- t.Error(err)
- }
- })
-}
-
-func TestOmitPieFlagsWhenKernelDefined(t *testing.T) {
- withTestContext(t, func(ctx *testContext) {
- initPieConfig(ctx.cfg)
- cmd := ctx.must(callCompiler(ctx, ctx.cfg,
- ctx.newCommand(gccX86_64, "-D__KERNEL__", mainCc)))
- if err := verifyArgCount(cmd, 0, "-pie"); err != nil {
- t.Error(err)
- }
- if err := verifyArgCount(cmd, 0, "-fPIE"); err != nil {
- t.Error(err)
- }
- })
-}
-
-func TestAddPieFlagsForEabiEvenIfNoPieGiven(t *testing.T) {
- withTestContext(t, func(ctx *testContext) {
- initPieConfig(ctx.cfg)
- cmd := ctx.must(callCompiler(ctx, ctx.cfg,
- ctx.newCommand(gccX86_64Eabi, "-nopie", mainCc)))
- if err := verifyArgCount(cmd, 0, "-nopie"); err != nil {
- t.Error(err)
- }
- if err := verifyArgCount(cmd, 1, "-pie"); err != nil {
- t.Error(err)
- }
- if err := verifyArgCount(cmd, 1, "-fPIE"); err != nil {
- t.Error(err)
- }
- })
-}
-
-func initPieConfig(cfg *config) {
- cfg.commonFlags = []string{"-fPIE", "-pie"}
-}
diff --git a/compiler_wrapper/print_cmdline_flag.go b/compiler_wrapper/print_cmdline_flag.go
index e2092edd..9c744c31 100644
--- a/compiler_wrapper/print_cmdline_flag.go
+++ b/compiler_wrapper/print_cmdline_flag.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/print_cmdline_flag_test.go b/compiler_wrapper/print_cmdline_flag_test.go
index 8f6fc226..54bd70c7 100644
--- a/compiler_wrapper/print_cmdline_flag_test.go
+++ b/compiler_wrapper/print_cmdline_flag_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/print_config_flag.go b/compiler_wrapper/print_config_flag.go
index 9ab9f6bc..37e54077 100644
--- a/compiler_wrapper/print_config_flag.go
+++ b/compiler_wrapper/print_config_flag.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/print_config_flag_test.go b/compiler_wrapper/print_config_flag_test.go
index 63451edb..1984723a 100644
--- a/compiler_wrapper/print_config_flag_test.go
+++ b/compiler_wrapper/print_config_flag_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/remote_build_flag_test.go b/compiler_wrapper/remote_build_flag_test.go
index 4a894179..23a22e1a 100644
--- a/compiler_wrapper/remote_build_flag_test.go
+++ b/compiler_wrapper/remote_build_flag_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/remote_build_flags.go b/compiler_wrapper/remote_build_flags.go
index fc26c93f..7a5a7651 100644
--- a/compiler_wrapper/remote_build_flags.go
+++ b/compiler_wrapper/remote_build_flags.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/reset_compiler_wrapper.sh b/compiler_wrapper/reset_compiler_wrapper.sh
index 523e972d..3206199f 100755
--- a/compiler_wrapper/reset_compiler_wrapper.sh
+++ b/compiler_wrapper/reset_compiler_wrapper.sh
@@ -1,6 +1,6 @@
#!/bin/bash -eux
#
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Copyright 2021 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
diff --git a/compiler_wrapper/rusage_flag.go b/compiler_wrapper/rusage_flag.go
index 63469602..ed59b11e 100644
--- a/compiler_wrapper/rusage_flag.go
+++ b/compiler_wrapper/rusage_flag.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/rusage_flag_test.go b/compiler_wrapper/rusage_flag_test.go
index 439cfd15..67021662 100644
--- a/compiler_wrapper/rusage_flag_test.go
+++ b/compiler_wrapper/rusage_flag_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/sanitizer_flags.go b/compiler_wrapper/sanitizer_flags.go
index da0a64b3..58312cc4 100644
--- a/compiler_wrapper/sanitizer_flags.go
+++ b/compiler_wrapper/sanitizer_flags.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -8,34 +8,79 @@ import (
"strings"
)
+// Returns whether the flag turns on 'invasive' sanitizers. These are sanitizers incompatible with
+// things like FORTIFY, since they require meaningful runtime support, intercept libc calls, etc.
+func isInvasiveSanitizerFlag(flag string) bool {
+ // There are a few valid spellings here:
+ // -fsanitize=${sanitizer_list}, which enables the given sanitizers
+ // -fsanitize-trap=${sanitizer_list}, which specifies sanitizer behavior _if_ these
+ // sanitizers are already enabled.
+ // -fsanitize-recover=${sanitizer_list}, which also specifies sanitizer behavior _if_
+ // these sanitizers are already enabled.
+ // -fsanitize-ignorelist=/path/to/file, which designates a config file for sanitizers.
+ //
+ // All we care about is the first one, since that's what actually enables sanitizers. Clang
+ // does not accept a `-fsanitize ${sanitizer_list}` spelling of this flag.
+ fsanitize := "-fsanitize="
+ if !strings.HasPrefix(flag, fsanitize) {
+ return false
+ }
+
+ sanitizers := flag[len(fsanitize):]
+ if sanitizers == "" {
+ return false
+ }
+
+ for _, sanitizer := range strings.Split(sanitizers, ",") {
+ // Keep an allowlist of sanitizers known to not cause issues.
+ switch sanitizer {
+ case "alignment", "array-bounds", "bool", "bounds", "builtin", "enum",
+ "float-cast-overflow", "integer-divide-by-zero", "local-bounds",
+ "nullability", "nullability-arg", "nullability-assign",
+ "nullability-return", "null", "return", "returns-nonnull-attribute",
+ "shift-base", "shift-exponent", "shift", "unreachable", "vla-bound":
+ // These sanitizers are lightweight. Ignore them.
+ default:
+ return true
+ }
+ }
+ return false
+}
+
func processSanitizerFlags(builder *commandBuilder) {
hasSanitizeFlags := false
+ // TODO: This doesn't take -fno-sanitize flags into account. This doesn't seem to be an
+ // issue in practice.
for _, arg := range builder.args {
- // TODO: This should probably be -fsanitize= to not match on
- // e.g. -fsanitize-blocklist
- if arg.fromUser {
- if strings.HasPrefix(arg.value, "-fsanitize") {
- hasSanitizeFlags = true
- }
+ if arg.fromUser && isInvasiveSanitizerFlag(arg.value) {
+ hasSanitizeFlags = true
+ break
}
}
- if hasSanitizeFlags {
- // Flags not supported by sanitizers (ASan etc.)
- unsupportedSanitizerFlags := map[string]bool{
- "-D_FORTIFY_SOURCE=1": true,
- "-D_FORTIFY_SOURCE=2": true,
- "-Wl,--no-undefined": true,
- "-Wl,-z,defs": true,
- }
- builder.transformArgs(func(arg builderArg) string {
- // TODO: This is a bug in the old wrapper to not filter
- // non user args for gcc. Fix this once we don't compare to the old wrapper anymore.
- if (builder.target.compilerType != gccType || arg.fromUser) &&
- unsupportedSanitizerFlags[arg.value] {
- return ""
- }
- return arg.value
- })
+ if !hasSanitizeFlags {
+ return
+ }
+
+ // Flags not supported by sanitizers (ASan etc.)
+ unsupportedSanitizerFlags := map[string]bool{
+ "-D_FORTIFY_SOURCE=1": true,
+ "-D_FORTIFY_SOURCE=2": true,
+ "-Wl,--no-undefined": true,
+ "-Wl,-z,defs": true,
}
+
+ builder.transformArgs(func(arg builderArg) string {
+ // TODO: This is a bug in the old wrapper to not filter
+ // non user args for gcc. Fix this once we don't compare to the old wrapper anymore.
+ if (builder.target.compilerType != gccType || arg.fromUser) &&
+ unsupportedSanitizerFlags[arg.value] {
+ return ""
+ }
+ return arg.value
+ })
+
+ builder.filterArgPairs(func(arg1, arg2 builderArg) bool {
+ return !(arg1.value == "-Wl,-z" && arg2.value == "-Wl,defs")
+ })
}
diff --git a/compiler_wrapper/sanitizer_flags_test.go b/compiler_wrapper/sanitizer_flags_test.go
index a401d58e..b4b1fd83 100644
--- a/compiler_wrapper/sanitizer_flags_test.go
+++ b/compiler_wrapper/sanitizer_flags_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -8,6 +8,28 @@ import (
"testing"
)
+func TestFortifyIsKeptIfSanitizerIsTrivial(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ cmd := ctx.must(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(gccX86_64, "-fsanitize=return", "-D_FORTIFY_SOURCE=1", mainCc)))
+ if err := verifyArgCount(cmd, 1, "-D_FORTIFY_SOURCE=1"); err != nil {
+ t.Error(err)
+ }
+
+ cmd = ctx.must(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(gccX86_64, "-fsanitize=return,address", "-D_FORTIFY_SOURCE=1", mainCc)))
+ if err := verifyArgCount(cmd, 0, "-D_FORTIFY_SOURCE=1"); err != nil {
+ t.Error(err)
+ }
+
+ cmd = ctx.must(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(gccX86_64, "-fsanitize=address,return", "-D_FORTIFY_SOURCE=1", mainCc)))
+ if err := verifyArgCount(cmd, 0, "-D_FORTIFY_SOURCE=1"); err != nil {
+ t.Error(err)
+ }
+ })
+}
+
func TestFilterUnsupportedSanitizerFlagsIfSanitizeGiven(t *testing.T) {
withTestContext(t, func(ctx *testContext) {
cmd := ctx.must(callCompiler(ctx, ctx.cfg,
@@ -23,6 +45,15 @@ func TestFilterUnsupportedSanitizerFlagsIfSanitizeGiven(t *testing.T) {
}
cmd = ctx.must(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(gccX86_64, "-fsanitize=kernel-address", "-Wl,-z -Wl,defs", mainCc)))
+ if err := verifyArgCount(cmd, 0, "-Wl,-z"); err != nil {
+ t.Error(err)
+ }
+ if err := verifyArgCount(cmd, 0, "-Wl,defs"); err != nil {
+ t.Error(err)
+ }
+
+ cmd = ctx.must(callCompiler(ctx, ctx.cfg,
ctx.newCommand(gccX86_64, "-fsanitize=kernel-address", "-D_FORTIFY_SOURCE=1", mainCc)))
if err := verifyArgCount(cmd, 0, "-D_FORTIFY_SOURCE=1"); err != nil {
t.Error(err)
@@ -75,6 +106,15 @@ func TestKeepSanitizerFlagsIfNoSanitizeGiven(t *testing.T) {
}
cmd = ctx.must(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(gccX86_64, "-Wl,-z", "-Wl,defs", mainCc)))
+ if err := verifyArgCount(cmd, 1, "-Wl,-z"); err != nil {
+ t.Error(err)
+ }
+ if err := verifyArgCount(cmd, 1, "-Wl,defs"); err != nil {
+ t.Error(err)
+ }
+
+ cmd = ctx.must(callCompiler(ctx, ctx.cfg,
ctx.newCommand(gccX86_64, "-D_FORTIFY_SOURCE=1", mainCc)))
if err := verifyArgCount(cmd, 1, "-D_FORTIFY_SOURCE=1"); err != nil {
t.Error(err)
diff --git a/compiler_wrapper/stackprotector_flags.go b/compiler_wrapper/stackprotector_flags.go
index 24605720..0e620b57 100644
--- a/compiler_wrapper/stackprotector_flags.go
+++ b/compiler_wrapper/stackprotector_flags.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/stackprotector_flags_test.go b/compiler_wrapper/stackprotector_flags_test.go
index a8757579..c13862a7 100644
--- a/compiler_wrapper/stackprotector_flags_test.go
+++ b/compiler_wrapper/stackprotector_flags_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/sysroot_flag.go b/compiler_wrapper/sysroot_flag.go
index e0583b22..597153a9 100644
--- a/compiler_wrapper/sysroot_flag.go
+++ b/compiler_wrapper/sysroot_flag.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/sysroot_flag_test.go b/compiler_wrapper/sysroot_flag_test.go
index b05a627e..9fea6848 100644
--- a/compiler_wrapper/sysroot_flag_test.go
+++ b/compiler_wrapper/sysroot_flag_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json b/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json
index e237c7c7..6993499c 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json
@@ -25,26 +25,28 @@
"/tmp/sysroot_bisect",
"/tmp/stable/clang",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
],
"env_updates": [
"PYTHONPATH=/somepath/test_binary"
@@ -80,26 +82,28 @@
"someBisectDir",
"/tmp/stable/clang",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
],
"env_updates": [
"PYTHONPATH=/somepath/test_binary"
@@ -138,26 +142,28 @@
"someBisectDir",
"/tmp/stable/clang",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
],
"env_updates": [
"PYTHONPATH=/somepath/test_binary"
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json
index 07fccc6d..26654033 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json
@@ -16,26 +16,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -58,26 +60,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -100,26 +104,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -142,26 +148,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -184,26 +192,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -226,26 +236,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -268,26 +280,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -310,26 +324,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -352,26 +368,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_host_wrapper.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_host_wrapper.json
index a221605e..b151051c 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_host_wrapper.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_host_wrapper.json
@@ -15,26 +15,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json
index 2130d528..396bb95c 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json
@@ -15,26 +15,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -56,26 +58,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -97,26 +101,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -138,26 +144,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -179,26 +187,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -220,26 +230,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -261,26 +273,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -302,26 +316,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -343,26 +359,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json
index 43ae728a..f32a7045 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json
@@ -15,26 +15,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -59,26 +61,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
},
"stdout": "somemessage",
@@ -103,26 +107,28 @@
"path": "/tmp/stable/clang++",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -147,26 +153,28 @@
"path": "somepath/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -198,28 +206,30 @@
"path": "/somedir/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-resource-dir=someResourceDir",
"--gcc-toolchain=/usr",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -254,28 +264,30 @@
"path": "/somedir/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-resource-dir=someResourceDir",
"--gcc-toolchain=/usr",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -310,28 +322,30 @@
"path": "/somedir/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-resource-dir=someResourceDir",
"--gcc-toolchain=/usr",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
},
"stdout": "somemessage",
@@ -356,26 +370,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -397,26 +413,28 @@
"path": "/tmp/stable/a/b/c/d/e/f/g/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -438,26 +456,28 @@
"path": "/tmp/stable/a/b/c/d/e/f/g/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -479,26 +499,28 @@
"path": "/tmp/stable/somedir/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -523,26 +545,28 @@
"path": "/tmp/stable/pathenv/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json
index b8b28cd9..8df51096 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json
@@ -17,27 +17,29 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fsanitize=kernel-address",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -61,27 +63,29 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fsanitize=kernel-address",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -105,27 +109,29 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fsanitize=kernel-address",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -149,27 +155,29 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fsanitize=kernel-address",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -192,27 +200,29 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fsanitize=fuzzer",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -236,28 +246,30 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fsanitize=address",
"-fprofile-instr-generate",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -280,27 +292,29 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fsanitize=address",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -323,27 +337,29 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fprofile-instr-generate",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json
index 7c4afd32..7c296af9 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json
@@ -25,18 +25,20 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-mno-movbe",
@@ -48,11 +50,11 @@
"-Woverride-init",
"-Wunsafe-loop-optimizations",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -75,27 +77,29 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-Wno-#warnings",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -118,27 +122,29 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-Wno-error=uninitialized",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -161,27 +167,29 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-someflag",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json b/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json
index f678ba64..c1cf0507 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json
@@ -31,26 +31,28 @@
"--",
"-resource-dir=someResourceDir",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
},
@@ -59,26 +61,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -117,26 +121,28 @@
"--",
"-resource-dir=someResourceDir",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
},
@@ -145,26 +151,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -205,26 +213,28 @@
"--",
"-resource-dir=someResourceDir",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
},
"stdout": "somemessage",
@@ -236,26 +246,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -297,26 +309,28 @@
"--",
"-resource-dir=someResourceDir",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
},
@@ -325,26 +339,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
},
"stdout": "somemessage",
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json
index f5a77714..ad290b45 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json
@@ -18,26 +18,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
}
}
@@ -62,26 +64,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
},
"stderr": "-Werror originalerror",
@@ -92,26 +96,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-Wno-error",
"-Wno-error=poison-system-directories"
]
@@ -140,26 +146,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
- "-Wno-unused-but-set-variable"
+ "-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation"
]
},
"stderr": "-Werror originalerror",
@@ -170,26 +178,28 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-fno-addrsig",
- "-fuse-ld=lld",
- "-fdebug-default-version=5",
- "-Wno-unused-local-typedefs",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-unused-local-typedefs",
+ "-fno-addrsig",
+ "-fuse-ld=lld",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"main.cc",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-Wno-error",
"-Wno-error=poison-system-directories"
]
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/bisect.json b/compiler_wrapper/testdata/cros_hardened_golden/bisect.json
index 05aea31f..8bd823ed 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/bisect.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/bisect.json
@@ -27,35 +27,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -100,35 +100,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -176,35 +176,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json
index 2b04d0c9..56f78efa 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json
@@ -18,24 +18,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -43,11 +43,11 @@
"-ftrapv",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -81,24 +81,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-eabi",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -106,11 +106,11 @@
"-ftrapv",
"main.cc",
"-L/usr/x86_64-cros-eabi/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -144,24 +144,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-win-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -169,11 +169,11 @@
"-ftrapv",
"main.cc",
"-L/usr/x86_64-cros-win-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -207,24 +207,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
@@ -232,11 +232,11 @@
"-ftrapv",
"main.cc",
"-L/usr/armv7m-cros-linux-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-linux-gnu"
@@ -269,24 +269,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-eabi",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -294,11 +294,11 @@
"-ftrapv",
"main.cc",
"-L/usr/armv7m-cros-eabi/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-eabi"
@@ -331,24 +331,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-win-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
@@ -356,11 +356,11 @@
"-ftrapv",
"main.cc",
"-L/usr/armv7m-cros-win-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-win-gnu"
@@ -393,24 +393,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
@@ -418,11 +418,11 @@
"-ftrapv",
"main.cc",
"-L/usr/armv8m-cros-linux-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-linux-gnu"
@@ -455,24 +455,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-eabi",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -480,11 +480,11 @@
"-ftrapv",
"main.cc",
"-L/usr/armv8m-cros-eabi/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-eabi"
@@ -517,24 +517,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-win-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
@@ -542,11 +542,11 @@
"-ftrapv",
"main.cc",
"-L/usr/armv8m-cros-win-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-win-gnu"
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json
index ea834174..db2f59aa 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json
@@ -17,35 +17,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -78,35 +78,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-eabi",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-eabi-",
"main.cc",
"-L/usr/x86_64-cros-eabi/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -139,35 +139,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-win-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-win-gnu-",
"main.cc",
"-L/usr/x86_64-cros-win-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -200,35 +200,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
"--prefix=../../bin/armv7m-cros-linux-gnu-",
"main.cc",
"-L/usr/armv7m-cros-linux-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-linux-gnu"
@@ -260,35 +260,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-eabi",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/armv7m-cros-eabi-",
"main.cc",
"-L/usr/armv7m-cros-eabi/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-eabi"
@@ -320,35 +320,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-win-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
"--prefix=../../bin/armv7m-cros-win-gnu-",
"main.cc",
"-L/usr/armv7m-cros-win-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-win-gnu"
@@ -380,35 +380,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
"--prefix=../../bin/armv8m-cros-linux-gnu-",
"main.cc",
"-L/usr/armv8m-cros-linux-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-linux-gnu"
@@ -440,35 +440,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-eabi",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/armv8m-cros-eabi-",
"main.cc",
"-L/usr/armv8m-cros-eabi/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-eabi"
@@ -500,35 +500,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-win-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
"--prefix=../../bin/armv8m-cros-win-gnu-",
"main.cc",
"-L/usr/armv8m-cros-win-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-win-gnu"
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json
index 52d4184a..186a16ed 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json
@@ -17,35 +17,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -81,35 +81,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -145,35 +145,35 @@
"../../usr/bin/clang++",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -209,35 +209,35 @@
"somepath/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -280,24 +280,24 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -306,11 +306,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -356,24 +356,24 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -382,11 +382,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -427,24 +427,24 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -453,11 +453,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -493,35 +493,35 @@
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -554,35 +554,35 @@
"a/b/c/d/e/usr/bin/clang",
"--sysroot=/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=a/b/c/d/e/bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-Ba/b/c/d/e/bin",
"-target",
@@ -615,35 +615,35 @@
"a/b/c/d/e/usr/bin/clang",
"--sysroot=/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=a/b/c/d/e/bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-Ba/b/c/d/e/bin",
"-target",
@@ -676,35 +676,35 @@
"../usr/bin/clang",
"--sysroot=/tmp/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../bin",
"-target",
@@ -740,35 +740,35 @@
"/tmp/usr/bin/clang",
"--sysroot=/tmp/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json
index b71a8805..6a38e845 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json
@@ -19,35 +19,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=kernel-address",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -82,35 +82,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=kernel-address",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -145,35 +145,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=kernel-address",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -208,35 +208,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=kernel-address",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -270,35 +270,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=fuzzer",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -333,24 +333,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
@@ -358,11 +358,11 @@
"-fprofile-instr-generate",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -396,35 +396,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=address",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -458,24 +458,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -483,11 +483,11 @@
"-fprofile-instr-generate",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json
index d10e6cd0..ec91216d 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json
@@ -27,24 +27,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -59,11 +59,11 @@
"-Wunsafe-loop-optimizations",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -97,24 +97,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -122,11 +122,11 @@
"-Wno-#warnings",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -160,24 +160,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -185,11 +185,11 @@
"-Wno-error=uninitialized",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -223,24 +223,24 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -248,11 +248,11 @@
"-someflag",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json
index 42209185..0ad97b7a 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json
@@ -21,8 +21,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -55,35 +53,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -119,35 +117,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -176,19 +174,21 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
@@ -196,13 +196,14 @@
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
+ "-nopie",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -236,19 +237,21 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-D_FORTIFY_SOURCE=2",
@@ -259,11 +262,11 @@
"-D__KERNEL__",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -297,19 +300,21 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7a-cros-linux-gnueabihf",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-D_FORTIFY_SOURCE=2",
@@ -320,11 +325,11 @@
"-D__KERNEL__",
"main.cc",
"-L/usr/armv7a-cros-linux-gnueabihf/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7a-cros-linux-gnueabihf"
@@ -356,24 +361,24 @@
"args": [
"../../usr/bin/clang",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -381,11 +386,11 @@
"--sysroot=xyz",
"main.cc",
"-Lxyz/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json b/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json
index ea1363e7..f7438940 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json
@@ -32,35 +32,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -74,35 +74,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -146,35 +146,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -189,35 +189,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -263,35 +263,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -309,35 +309,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -384,35 +384,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -427,35 +427,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json
index 4df81578..9cd72611 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json
@@ -20,35 +20,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -84,35 +84,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -134,35 +134,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -202,35 +202,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -252,35 +252,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json
index e2037e26..d9b532f0 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json
@@ -17,35 +17,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -66,8 +66,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -105,35 +103,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -154,8 +152,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -188,35 +184,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -252,35 +248,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -301,8 +297,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json
index 0cc3d8a9..63b7da18 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json
@@ -21,8 +21,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -60,8 +58,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -99,8 +95,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -138,8 +132,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
@@ -176,8 +168,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -214,8 +204,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
@@ -252,8 +240,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
@@ -290,8 +276,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -328,8 +312,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-static-libgcc",
"-mthumb",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json
index 5b129d7d..6e06ce18 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json
@@ -21,8 +21,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -63,8 +61,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -105,8 +101,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -144,8 +138,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -183,8 +175,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -225,8 +215,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json
index a61ead8e..9aaf9c25 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json
@@ -23,8 +23,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -65,8 +63,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -107,8 +103,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -149,8 +143,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -190,8 +182,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -232,8 +222,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -274,8 +262,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -315,8 +301,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json
index f7b20001..4ee90cbc 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json
@@ -22,8 +22,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -63,8 +61,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -104,8 +100,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json
index 299b46b6..9397333d 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json
@@ -21,8 +21,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -59,8 +57,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -101,8 +97,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -140,6 +134,7 @@
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
+ "-nopie",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
"-mno-movbe"
@@ -251,8 +246,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json
index 05aea31f..8bd823ed 100644
--- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json
+++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json
@@ -27,35 +27,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -100,35 +100,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -176,35 +176,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json
index 52d4184a..186a16ed 100644
--- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json
@@ -17,35 +17,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -81,35 +81,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -145,35 +145,35 @@
"../../usr/bin/clang++",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -209,35 +209,35 @@
"somepath/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -280,24 +280,24 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -306,11 +306,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -356,24 +356,24 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -382,11 +382,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -427,24 +427,24 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -453,11 +453,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -493,35 +493,35 @@
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -554,35 +554,35 @@
"a/b/c/d/e/usr/bin/clang",
"--sysroot=/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=a/b/c/d/e/bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-Ba/b/c/d/e/bin",
"-target",
@@ -615,35 +615,35 @@
"a/b/c/d/e/usr/bin/clang",
"--sysroot=/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=a/b/c/d/e/bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-Ba/b/c/d/e/bin",
"-target",
@@ -676,35 +676,35 @@
"../usr/bin/clang",
"--sysroot=/tmp/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../bin",
"-target",
@@ -740,35 +740,35 @@
"/tmp/usr/bin/clang",
"--sysroot=/tmp/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json
index ea1363e7..f7438940 100644
--- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json
+++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json
@@ -32,35 +32,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -74,35 +74,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -146,35 +146,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -189,35 +189,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -263,35 +263,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -309,35 +309,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -384,35 +384,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -427,35 +427,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/force_disable_werror.json
index 4df81578..9cd72611 100644
--- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/force_disable_werror.json
+++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/force_disable_werror.json
@@ -20,35 +20,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -84,35 +84,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -134,35 +134,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -202,35 +202,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -252,35 +252,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_clang_syntax.json
index e2037e26..d9b532f0 100644
--- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_clang_syntax.json
+++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_clang_syntax.json
@@ -17,35 +17,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -66,8 +66,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -105,35 +103,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -154,8 +152,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -188,35 +184,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -252,35 +248,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -301,8 +297,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_path.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_path.json
index 5b129d7d..6e06ce18 100644
--- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_path.json
@@ -21,8 +21,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -63,8 +61,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -105,8 +101,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -144,8 +138,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -183,8 +175,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -225,8 +215,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json
index a676dc6e..da522b99 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json
@@ -26,35 +26,35 @@
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -95,35 +95,35 @@
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -167,35 +167,35 @@
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json
index cc6d1ada..287833cf 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json
@@ -16,35 +16,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -74,35 +74,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -132,35 +132,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -190,35 +190,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -255,24 +255,24 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -281,11 +281,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -326,24 +326,24 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -352,11 +352,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -396,24 +396,24 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -422,11 +422,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -456,35 +456,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -511,35 +511,35 @@
"args": [
"--sysroot=/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=a/b/c/d/e/bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-Ba/b/c/d/e/bin",
"-target",
@@ -566,35 +566,35 @@
"args": [
"--sysroot=/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=a/b/c/d/e/bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-Ba/b/c/d/e/bin",
"-target",
@@ -621,35 +621,35 @@
"args": [
"--sysroot=/tmp/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../bin",
"-target",
@@ -679,35 +679,35 @@
"args": [
"--sysroot=/tmp/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json
index ea1363e7..f7438940 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json
@@ -32,35 +32,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -74,35 +74,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -146,35 +146,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -189,35 +189,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -263,35 +263,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -309,35 +309,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -384,35 +384,35 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -427,35 +427,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json
index 2c34edb4..54943fb3 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json
@@ -19,35 +19,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -77,35 +77,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -121,35 +121,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -183,35 +183,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -227,35 +227,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json
index 368eb855..1704cd17 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json
@@ -17,35 +17,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -65,8 +65,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -100,35 +98,35 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -149,8 +147,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -183,35 +179,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -247,35 +243,35 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fno-addrsig",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
+ "-fdebug-default-version=5",
+ "-fexperimental-new-pass-manager",
+ "--unwindlib=libunwind",
"-Wno-section",
+ "-fno-addrsig",
"-fuse-ld=lld",
- "--unwindlib=libgcc",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
- "-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -295,8 +291,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_path.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_path.json
index 9393c4b3..fb877370 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_path.json
@@ -20,8 +20,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -57,8 +55,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -94,8 +90,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -128,8 +122,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -162,8 +154,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
@@ -199,8 +189,6 @@
"-Wno-maybe-uninitialized",
"-fcommon",
"-fstack-protector-strong",
- "-fPIE",
- "-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-static-libgcc",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json b/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json
index 6c46fee8..96fd88cf 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json
@@ -27,26 +27,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -91,26 +93,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -158,26 +162,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json
index 86960cc9..35f90b1e 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json
@@ -18,27 +18,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-ftrapv",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -72,27 +74,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-eabi",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-eabi-",
"-ftrapv",
"main.cc",
"-L/usr/x86_64-cros-eabi/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -126,27 +130,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-win-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-win-gnu-",
"-ftrapv",
"main.cc",
"-L/usr/x86_64-cros-win-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -180,16 +186,18 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"-mthumb",
@@ -197,11 +205,11 @@
"-ftrapv",
"main.cc",
"-L/usr/armv7m-cros-linux-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-linux-gnu"
@@ -234,27 +242,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-eabi",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/armv7m-cros-eabi-",
"-ftrapv",
"main.cc",
"-L/usr/armv7m-cros-eabi/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-eabi"
@@ -287,16 +297,18 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-win-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"-mthumb",
@@ -304,11 +316,11 @@
"-ftrapv",
"main.cc",
"-L/usr/armv7m-cros-win-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-win-gnu"
@@ -341,16 +353,18 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"-mthumb",
@@ -358,11 +372,11 @@
"-ftrapv",
"main.cc",
"-L/usr/armv8m-cros-linux-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-linux-gnu"
@@ -395,27 +409,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-eabi",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/armv8m-cros-eabi-",
"-ftrapv",
"main.cc",
"-L/usr/armv8m-cros-eabi/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-eabi"
@@ -448,16 +464,18 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-win-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"-mthumb",
@@ -465,11 +483,11 @@
"-ftrapv",
"main.cc",
"-L/usr/armv8m-cros-win-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-win-gnu"
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json
index 69af166d..e2479e9b 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json
@@ -17,26 +17,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -69,26 +71,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-eabi",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-eabi-",
"main.cc",
"-L/usr/x86_64-cros-eabi/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -121,26 +125,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-win-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-win-gnu-",
"main.cc",
"-L/usr/x86_64-cros-win-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -173,27 +179,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"-mthumb",
"--prefix=../../bin/armv7m-cros-linux-gnu-",
"main.cc",
"-L/usr/armv7m-cros-linux-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-linux-gnu"
@@ -225,26 +233,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-eabi",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/armv7m-cros-eabi-",
"main.cc",
"-L/usr/armv7m-cros-eabi/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-eabi"
@@ -276,27 +286,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-win-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"-mthumb",
"--prefix=../../bin/armv7m-cros-win-gnu-",
"main.cc",
"-L/usr/armv7m-cros-win-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-win-gnu"
@@ -328,27 +340,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"-mthumb",
"--prefix=../../bin/armv8m-cros-linux-gnu-",
"main.cc",
"-L/usr/armv8m-cros-linux-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-linux-gnu"
@@ -380,26 +394,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-eabi",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/armv8m-cros-eabi-",
"main.cc",
"-L/usr/armv8m-cros-eabi/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-eabi"
@@ -431,27 +447,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-win-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"-mthumb",
"--prefix=../../bin/armv8m-cros-win-gnu-",
"main.cc",
"-L/usr/armv8m-cros-win-gnu/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-win-gnu"
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json
index afc79511..11c566b6 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json
@@ -17,26 +17,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -72,26 +74,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -127,26 +131,28 @@
"../../usr/bin/clang++",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -182,26 +188,28 @@
"somepath/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -244,16 +252,18 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
@@ -261,11 +271,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -311,16 +321,18 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
@@ -328,11 +340,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -373,16 +385,18 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
@@ -390,11 +404,11 @@
"--gcc-toolchain=/usr",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -430,26 +444,28 @@
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -482,26 +498,28 @@
"a/b/c/d/e/usr/bin/clang",
"--sysroot=/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=a/b/c/d/e/bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-Ba/b/c/d/e/bin",
"-target",
@@ -534,26 +552,28 @@
"a/b/c/d/e/usr/bin/clang",
"--sysroot=/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=a/b/c/d/e/bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/stable/a/b/c/d/e/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-Ba/b/c/d/e/bin",
"-target",
@@ -586,26 +606,28 @@
"../usr/bin/clang",
"--sysroot=/tmp/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../bin",
"-target",
@@ -641,26 +663,28 @@
"/tmp/usr/bin/clang",
"--sysroot=/tmp/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/tmp/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json
index 3e140d59..fe0df74d 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json
@@ -19,27 +19,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=kernel-address",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -74,27 +76,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=kernel-address",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -129,27 +133,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=kernel-address",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -184,27 +190,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=kernel-address",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -238,27 +246,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=fuzzer",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -293,16 +303,18 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
@@ -310,11 +322,11 @@
"-fprofile-instr-generate",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -348,27 +360,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fsanitize=address",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -402,27 +416,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-fprofile-instr-generate",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json
index fbe038e7..b744e8c6 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json
@@ -27,16 +27,18 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
@@ -50,11 +52,11 @@
"-Wunsafe-loop-optimizations",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -88,27 +90,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-Wno-#warnings",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -142,27 +146,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-Wno-error=uninitialized",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -196,27 +202,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"-someflag",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json
index f2ccadb9..ed3a6ef1 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json
@@ -50,26 +50,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -105,26 +107,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -153,26 +157,29 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
+ "-nopie",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -206,16 +213,18 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"-fno-stack-protector",
@@ -223,11 +232,11 @@
"-D__KERNEL__",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -261,16 +270,18 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7a-cros-linux-gnueabihf",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"-mthumb",
@@ -279,11 +290,11 @@
"-D__KERNEL__",
"main.cc",
"-L/usr/armv7a-cros-linux-gnueabihf/usr/lib",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7a-cros-linux-gnueabihf"
@@ -315,27 +326,29 @@
"args": [
"../../usr/bin/clang",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"--sysroot=xyz",
"main.cc",
"-Lxyz/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json
index dc641c96..830abee6 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json
@@ -32,26 +32,28 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -65,26 +67,28 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -128,26 +132,28 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -162,26 +168,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -227,26 +235,28 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -264,26 +274,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -330,26 +342,28 @@
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -364,26 +378,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json
index 54b994cc..07c20900 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json
@@ -20,26 +20,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -75,26 +77,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -116,26 +120,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -175,26 +181,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -216,26 +224,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json
index 5234715d..9dd5687b 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json
@@ -17,26 +17,28 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -91,26 +93,28 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -160,26 +164,28 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
@@ -215,26 +221,28 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-fdebug-default-version=5",
+ "-Werror=poison-system-directories",
+ "-Wno-compound-token-split-by-macro",
+ "-Wno-deprecated-declarations",
+ "-Wno-error=implicit-function-declaration",
+ "-Wno-error=implicit-int",
+ "-Wno-final-dtor-non-final-class",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
- "-Wno-section",
- "-Wno-final-dtor-non-final-class",
- "-Werror=poison-system-directories",
+ "-fdebug-default-version=5",
"-fexperimental-new-pass-manager",
- "-Wno-compound-token-split-by-macro",
- "-Wno-deprecated-declarations",
+ "-Wno-section",
"-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-static-libgcc",
"--prefix=../../bin/x86_64-cros-linux-gnu-",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
- "-Wno-implicit-int-float-conversion",
"-Wno-compound-token-split-by-space",
- "-Wno-string-concatenation",
"-Wno-deprecated-copy",
"-Wno-unused-but-set-variable",
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-string-concatenation",
"-mno-movbe",
"-B../../bin",
"-target",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json
index ba2f292c..25411f20 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json
@@ -122,6 +122,7 @@
"-Wno-deprecated-declarations",
"-Wtrampolines",
"-static-libgcc",
+ "-nopie",
"main.cc",
"-L/usr/x86_64-cros-linux-gnu/usr/lib64",
"-mno-movbe"
diff --git a/compiler_wrapper/testutil_test.go b/compiler_wrapper/testutil_test.go
index 035f2373..463e34ac 100644
--- a/compiler_wrapper/testutil_test.go
+++ b/compiler_wrapper/testutil_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/thumb_flags.go b/compiler_wrapper/thumb_flags.go
index 0edaf4ff..3e641d3b 100644
--- a/compiler_wrapper/thumb_flags.go
+++ b/compiler_wrapper/thumb_flags.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/thumb_flags_test.go b/compiler_wrapper/thumb_flags_test.go
index 2e8f7e66..24985bcf 100644
--- a/compiler_wrapper/thumb_flags_test.go
+++ b/compiler_wrapper/thumb_flags_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/unsupported_flags.go b/compiler_wrapper/unsupported_flags.go
index 48fee2f5..5a0dceeb 100644
--- a/compiler_wrapper/unsupported_flags.go
+++ b/compiler_wrapper/unsupported_flags.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/unsupported_flags_test.go b/compiler_wrapper/unsupported_flags_test.go
index a32eb521..17ff13af 100644
--- a/compiler_wrapper/unsupported_flags_test.go
+++ b/compiler_wrapper/unsupported_flags_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/x64_flags.go b/compiler_wrapper/x64_flags.go
index 40505cf8..2e4a0af1 100644
--- a/compiler_wrapper/x64_flags.go
+++ b/compiler_wrapper/x64_flags.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/compiler_wrapper/x64_flags_test.go b/compiler_wrapper/x64_flags_test.go
index fd93728f..ce5caebd 100644
--- a/compiler_wrapper/x64_flags_test.go
+++ b/compiler_wrapper/x64_flags_test.go
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium OS Authors. All rights reserved.
+// Copyright 2019 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.