[clang][Interp][NFC] Use qualified name in Function::getName()
authorTimm Bäder <tbaeder@redhat.com>
Thu, 16 Feb 2023 07:22:26 +0000 (08:22 +0100)
committerTimm Bäder <tbaeder@redhat.com>
Tue, 28 Feb 2023 14:54:25 +0000 (15:54 +0100)
clang/lib/AST/Interp/Disasm.cpp
clang/lib/AST/Interp/Function.h

index 1c95782..7a5da90 100644 (file)
@@ -34,14 +34,7 @@ template <typename T> inline T ReadArg(Program &P, CodePtr &OpPC) {
 LLVM_DUMP_METHOD void Function::dump() const { dump(llvm::errs()); }
 
 LLVM_DUMP_METHOD void Function::dump(llvm::raw_ostream &OS) const {
-  if (F) {
-    if (const auto *MD = dyn_cast<CXXMethodDecl>(F))
-      OS << MD->getParent()->getDeclName() << "::";
-    OS << F->getDeclName() << " " << (const void *)this << ":\n";
-  } else {
-    OS << "<<expr>>\n";
-  }
-
+  OS << getName() << " " << (const void *)this << "\n";
   OS << "frame size: " << getFrameSize() << "\n";
   OS << "arg size:   " << getArgSize() << "\n";
   OS << "rvo:        " << hasRVO() << "\n";
index 434c3f7..1eb4fa9 100644 (file)
@@ -90,7 +90,12 @@ public:
 
   /// Returns the name of the function decl this code
   /// was generated for.
-  const std::string getName() const { return F->getNameInfo().getAsString(); }
+  const std::string getName() const {
+    if (!F)
+      return "<<expr>>";
+
+    return F->getQualifiedNameAsString();
+  }
 
   /// Returns the location.
   SourceLocation getLoc() const { return Loc; }