]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
cp-demangle.c (cplus_demangle_operators): Add li.
authorJason Merrill <jason@redhat.com>
Wed, 7 Mar 2012 23:19:06 +0000 (18:19 -0500)
committerJason Merrill <jason@gcc.gnu.org>
Wed, 7 Mar 2012 23:19:06 +0000 (18:19 -0500)
* cp-demangle.c (cplus_demangle_operators): Add li.
(d_unqualified_name): Handle it specially.

From-SVN: r185082

libiberty/ChangeLog
libiberty/cp-demangle.c
libiberty/testsuite/demangle-expected

index 5f492cc3978e11bdee8cef8a4cff718ca64247d4..97bdfed4cc6d7add41b8b41e1471b5f5b4a31205 100644 (file)
@@ -1,3 +1,8 @@
+2012-03-07  Jason Merrill  <jason@redhat.com>
+
+       * cp-demangle.c (cplus_demangle_operators): Add li.
+       (d_unqualified_name): Handle it specially.
+
 2012-01-26  Jakub Jelinek  <jakub@redhat.com>
 
        * make-relative-prefix.c (make_relative_prefix_1): Avoid warning
index 18b84a126e8ed2aa57659954d0d4f56fe465fb6c..2b3d1820c6089ca55b489e6124e41bb1d6585360 100644 (file)
@@ -1419,7 +1419,12 @@ d_unqualified_name (struct d_info *di)
 
       ret = d_operator_name (di);
       if (ret != NULL && ret->type == DEMANGLE_COMPONENT_OPERATOR)
-       di->expansion += sizeof "operator" + ret->u.s_operator.op->len - 2;
+       {
+         di->expansion += sizeof "operator" + ret->u.s_operator.op->len - 2;
+         if (!strcmp (ret->u.s_operator.op->code, "li"))
+           ret = d_make_comp (di, DEMANGLE_COMPONENT_UNARY, ret,
+                              d_source_name (di));
+       }
       return ret;
     }
   else if (peek == 'C' || peek == 'D')
@@ -1596,6 +1601,7 @@ const struct demangle_operator_info cplus_demangle_operators[] =
   { "ix", NL ("[]"),        2 },
   { "lS", NL ("<<="),       2 },
   { "le", NL ("<="),        2 },
+  { "li", NL ("operator\"\" "), 1 },
   { "ls", NL ("<<"),        2 },
   { "lt", NL ("<"),         2 },
   { "mI", NL ("-="),        2 },
index 408c4f47794f98757398809f88fe3b547c93f945..036c481351377e32d62fb0aeb132f4e7bce58d16 100644 (file)
@@ -4072,6 +4072,9 @@ decltype (g({parm#1}, {})) f1<int>(int)
 --format=gnu-v3
 _Z2f1IiEDTnw_T_ilEES0_
 decltype (new int{}) f1<int>(int)
+--format=gnu-v3
+_Zli2_wPKc
+operator"" _w(char const*)
 #
 # Ada (GNAT) tests.
 #