diff options
author | David Majnemer <david.majnemer@gmail.com> | 2015-12-31 05:36:50 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2015-12-31 05:36:50 +0000 |
commit | e3d7191a74d98675be14c99c75a0b76302b9d1fa (patch) | |
tree | 73cd6e00d0804bf25d924186b7651196dcb82e04 | |
parent | 474b323a0387d4c59055300c56951d1aa2591d80 (diff) | |
download | bcm5719-llvm-e3d7191a74d98675be14c99c75a0b76302b9d1fa.tar.gz bcm5719-llvm-e3d7191a74d98675be14c99c75a0b76302b9d1fa.zip |
[MS ABI] Replace dead code with an assertion
As per C++ [dcl.ref]p1, cv-qualified references are not valid. As such,
change the mangler to assert that this event does not happen.
llvm-svn: 256662
-rw-r--r-- | clang/lib/AST/MicrosoftMangle.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/AST/MicrosoftMangle.cpp b/clang/lib/AST/MicrosoftMangle.cpp index 2f9ab71652c..79f41bfb47d 100644 --- a/clang/lib/AST/MicrosoftMangle.cpp +++ b/clang/lib/AST/MicrosoftMangle.cpp @@ -2215,7 +2215,8 @@ void MicrosoftCXXNameMangler::mangleType(const ObjCObjectPointerType *T, void MicrosoftCXXNameMangler::mangleType(const LValueReferenceType *T, Qualifiers Quals, SourceRange Range) { QualType PointeeType = T->getPointeeType(); - Out << (Quals.hasVolatile() ? 'B' : 'A'); + assert(!Quals.hasConst() && !Quals.hasVolatile() && "unexpected qualifier!"); + Out << 'A'; manglePointerExtQualifiers(Quals, PointeeType); mangleType(PointeeType, Range); } @@ -2226,7 +2227,8 @@ void MicrosoftCXXNameMangler::mangleType(const LValueReferenceType *T, void MicrosoftCXXNameMangler::mangleType(const RValueReferenceType *T, Qualifiers Quals, SourceRange Range) { QualType PointeeType = T->getPointeeType(); - Out << (Quals.hasVolatile() ? "$$R" : "$$Q"); + assert(!Quals.hasConst() && !Quals.hasVolatile() && "unexpected qualifier!"); + Out << "$$Q"; manglePointerExtQualifiers(Quals, PointeeType); mangleType(PointeeType, Range); } |