Switch to clang-r346389.

* Add -fno-sanitize=implicit-integer-sign-change when
  there is any integer related sanitizer, and this check
  is not explicitly specified.
  Android core does not boot with this new sanitizer yet.
* Filter out -fno-sanitize=implicit-integer-sign-change
  from tooling flags.

Bug: 119329758
Bug: 119557795
Test: make checkbuild, boot, go/clang-r346389-testing
Change-Id: I709de569cb73d070fc4958e2b4387f4041bc5438
diff --git a/cc/config/clang.go b/cc/config/clang.go
index 89e567d..46d8528 100644
--- a/cc/config/clang.go
+++ b/cc/config/clang.go
@@ -91,7 +91,9 @@
 	"-Wl,-m,aarch64_elf64_le_vec",
 })
 
-var ClangLibToolingUnknownCflags []string = nil
+var ClangLibToolingUnknownCflags = sorted([]string{
+	"-fno-sanitize=implicit-integer-sign-change",
+})
 
 func init() {
 	pctx.StaticVariable("ClangExtraCflags", strings.Join([]string{
diff --git a/cc/config/global.go b/cc/config/global.go
index 31f64fe..92969b0 100644
--- a/cc/config/global.go
+++ b/cc/config/global.go
@@ -120,8 +120,8 @@
 
 	// prebuilts/clang default settings.
 	ClangDefaultBase         = "prebuilts/clang/host"
-	ClangDefaultVersion      = "clang-r344140b"
-	ClangDefaultShortVersion = "8.0.4"
+	ClangDefaultVersion      = "clang-r346389"
+	ClangDefaultShortVersion = "8.0.5"
 
 	// Directories with warnings from Android.bp files.
 	WarningAllowedProjects = []string{