From 8ece6dc4356abe76d3cd7b4742d01f53a95a8e3b Mon Sep 17 00:00:00 2001 From: Chris Mihelich Date: Wed, 5 Jun 2024 11:26:26 -0700 Subject: Demangle nx... syntax for noexcept(e) as an expression in a dependent signature. PiperOrigin-RevId: 640590102 Change-Id: I2641cddd35119062328a197162bb700d8309fc05 --- absl/debugging/internal/demangle_test.cc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'absl/debugging/internal/demangle_test.cc') diff --git a/absl/debugging/internal/demangle_test.cc b/absl/debugging/internal/demangle_test.cc index a91935f4..5dc2d03b 100644 --- a/absl/debugging/internal/demangle_test.cc +++ b/absl/debugging/internal/demangle_test.cc @@ -1128,6 +1128,21 @@ TEST(Demangle, AlignofExpression) { EXPECT_STREQ("f<>()", tmp); } +TEST(Demangle, NoexceptExpression) { + char tmp[80]; + + // Source: + // + // template void f(T (&a)[noexcept(T{})]) {} + // template void f(int (&)[noexcept(int{})]); + // + // Full LLVM demangling of the instantiation of f: + // + // void f(int (&) [noexcept (int{})]) + EXPECT_TRUE(Demangle("_Z1fIiEvRAnxtlT_E_S0_", tmp, sizeof(tmp))); + EXPECT_STREQ("f<>()", tmp); +} + TEST(Demangle, ThreadLocalWrappers) { char tmp[80]; -- cgit v1.2.3