1*d582442bSRonan Keryell// Show that llvm-cxxfilt --quote adds quotes around demangled symbols, unless 2*d582442bSRonan Keryell// the symbol is already quoted. 3*d582442bSRonan Keryell 4*d582442bSRonan KeryellRUN: split-file %s %t 5*d582442bSRonan Keryell 6*d582442bSRonan KeryellRUN: llvm-cxxfilt --quote < %t/symbols-in-file.test | FileCheck --match-full-lines --check-prefix=CHECK-FILE %s 7*d582442bSRonan KeryellCHECK-FILE: "bar()" "bar()" 8*d582442bSRonan KeryellCHECK-FILE-NEXT: "bar()" "bar()" 9*d582442bSRonan KeryellCHECK-FILE: log() 10*d582442bSRonan KeryellCHECK-FILE: "import thunk for std::future<void>" 11*d582442bSRonan Keryell 12*d582442bSRonan Keryell// Check it works with CLI symbols too. Since a quoted mangled name is not a 13*d582442bSRonan Keryell// mangled name, it should be unchanged. 14*d582442bSRonan KeryellRUN: llvm-cxxfilt --quote _Z3firv '"_Z3barv"' 'saw()' | FileCheck --match-full-lines --check-prefix=CHECK-CLI %s 15*d582442bSRonan KeryellCHECK-CLI: "fir()" 16*d582442bSRonan KeryellCHECK-CLI-NEXT: "_Z3barv" 17*d582442bSRonan KeryellCHECK-CLI-NEXT: saw() 18*d582442bSRonan Keryell 19*d582442bSRonan Keryell//--- symbols-in-file.test 20*d582442bSRonan Keryell_Z3barv "_Z3barv" 21*d582442bSRonan Keryell"_Z3barv" _Z3barv 22*d582442bSRonan Keryell// This is not mangled, thus it should not be quoted. 23*d582442bSRonan Keryelllog() 24*d582442bSRonan Keryell// Check that an "import thunk for" prefix can be quoted along the demangled 25*d582442bSRonan Keryell// name. 26*d582442bSRonan Keryell__imp__ZSt6futureIvE 27