Rollup merge of #57840 - tromey:fix-issue-57762, r=nikic

Fix issue 57762

against a stock LLVM 7.  LLVM 7 was released without a necessary fix
for a bug in the DWARF discriminant code.

This patch changes rustc to use the fallback mode on (non-Rust) LLVM 7.

Closes #57762
This commit is contained in:
Mazdak Farrokhzad 2019-01-24 00:20:00 +01:00 committed by GitHub
commit ab998a2eeb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1164,7 +1164,10 @@ fn use_enum_fallback(cx: &CodegenCx) -> bool {
// On MSVC we have to use the fallback mode, because LLVM doesn't
// lower variant parts to PDB.
return cx.sess().target.target.options.is_like_msvc
|| llvm_util::get_major_version() < 7;
// LLVM version 7 did not release with an important bug fix;
// but the required patch is in the LLVM 8. Rust LLVM reports
// 8 as well.
|| llvm_util::get_major_version() < 8;
}
// Describes the members of an enum value: An enum is described as a union of