gecko-dev/build/build-clang/downgrade-mangling-error.patch
David Major 103a1cbba6 Bug 1573211 - Update to clang 9.0.0 r=glandium
Updates all clang 8.0.1 to version 9.0.0, except for the mingw builds
which suffer from bug 1548624 and will be handled separately later.

Differential Revision: https://phabricator.services.mozilla.com/D44160

MANUAL PUSH: Rebuild clang toolchains without stalling autoland

--HG--
rename : build/build-clang/clang-8-android.json => build/build-clang/clang-android.json
rename : build/build-clang/clang-8-linux64-aarch64-cross.json => build/build-clang/clang-linux64-aarch64-cross.json
rename : build/build-clang/clang-8-linux64.json => build/build-clang/clang-linux64.json
rename : build/build-clang/clang-8-macosx64.json => build/build-clang/clang-macosx64.json
rename : taskcluster/scripts/misc/build-clang-8-linux-macosx-cross.sh => taskcluster/scripts/misc/build-clang-linux-macosx-cross.sh
2019-09-21 16:26:53 +02:00

34 lines
1.4 KiB
Diff

Downgrade unimplemented mangling diagnostic from error to note.
This codepath is exercised by MozsearchIndexer.cpp (the searchfox
indexer) when indexing on Windows. We can do without having the
unimplemented bits for now as long the compiler doesn't fail the
build. See also https://bugs.llvm.org/show_bug.cgi?id=39294
diff --git a/clang/lib/AST/ItaniumMangle.cpp b/clang/lib/AST/ItaniumMangle.cpp
index b483187394..fb01348ebb 100644
--- a/clang/lib/AST/ItaniumMangle.cpp
+++ b/clang/lib/AST/ItaniumMangle.cpp
@@ -3623,20 +3623,21 @@ recurse:
case Expr::AtomicExprClass:
case Expr::SourceLocExprClass:
case Expr::FixedPointLiteralClass:
case Expr::BuiltinBitCastExprClass:
{
if (!NullOut) {
// As bad as this diagnostic is, it's better than crashing.
DiagnosticsEngine &Diags = Context.getDiags();
- unsigned DiagID = Diags.getCustomDiagID(DiagnosticsEngine::Error,
+ unsigned DiagID = Diags.getCustomDiagID(DiagnosticsEngine::Remark,
"cannot yet mangle expression type %0");
Diags.Report(E->getExprLoc(), DiagID)
<< E->getStmtClassName() << E->getSourceRange();
+ Out << "MOZ_WE_HACKED_AROUND_BUG_1418415";
}
break;
}
case Expr::CXXUuidofExprClass: {
const CXXUuidofExpr *UE = cast<CXXUuidofExpr>(E);
if (UE->isTypeOperand()) {
QualType UuidT = UE->getTypeOperand(Context.getASTContext());