summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/MicrosoftMangle.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2017-12-01 02:13:10 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2017-12-01 02:13:10 +0000
commitd30b23d6a54b3f0883914f3c2c2318a78edcbe67 (patch)
treec9958ae2b0ab602da82170f58caf6bd3ab898982 /clang/lib/AST/MicrosoftMangle.cpp
parent69989bdbf2538d64906d9a99e27f6f1e2ed3b190 (diff)
downloadbcm5719-llvm-d30b23d6a54b3f0883914f3c2c2318a78edcbe67.tar.gz
bcm5719-llvm-d30b23d6a54b3f0883914f3c2c2318a78edcbe67.zip
[c++2a] P0515R3: Support for overloaded operator<=>.
No CodeGen support for MSABI yet, we don't know how to mangle this there. llvm-svn: 319513
Diffstat (limited to 'clang/lib/AST/MicrosoftMangle.cpp')
-rw-r--r--clang/lib/AST/MicrosoftMangle.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/clang/lib/AST/MicrosoftMangle.cpp b/clang/lib/AST/MicrosoftMangle.cpp
index c8048544ab8..0c55c1a9228 100644
--- a/clang/lib/AST/MicrosoftMangle.cpp
+++ b/clang/lib/AST/MicrosoftMangle.cpp
@@ -1192,6 +1192,15 @@ void MicrosoftCXXNameMangler::mangleOperatorName(OverloadedOperatorKind OO,
// <operator-name> ::= ?__L # co_await
case OO_Coawait: Out << "?__L"; break;
+ case OO_Spaceship: {
+ // FIXME: Once MS picks a mangling, use it.
+ DiagnosticsEngine &Diags = Context.getDiags();
+ unsigned DiagID = Diags.getCustomDiagID(DiagnosticsEngine::Error,
+ "cannot mangle this three-way comparison operator yet");
+ Diags.Report(Loc, DiagID);
+ break;
+ }
+
case OO_Conditional: {
DiagnosticsEngine &Diags = Context.getDiags();
unsigned DiagID = Diags.getCustomDiagID(DiagnosticsEngine::Error,
OpenPOWER on IntegriCloud