[C++ PATCH] cp_expr tweak and delete unused enumerations
authorNathan Sidwell <nathan@acm.org>
Thu, 12 Oct 2017 18:56:53 +0000 (18:56 +0000)
committerNathan Sidwell <nathan@gcc.gnu.org>
Thu, 12 Oct 2017 18:56:53 +0000 (18:56 +0000)
https://gcc.gnu.org/ml/gcc-patches/2017-10/msg00784.html
* cp-tree.h (cp_expr): Add const operator * and operator->
accessors.
(cp_tree_node_structure_enum): Delete TS_CP_BINDING,
TS_CP_WRAPPER, LAST_TS_CP_ENUM.

From-SVN: r253693

gcc/cp/ChangeLog
gcc/cp/cp-tree.h

index 7174115..3abf794 100644 (file)
@@ -1,3 +1,10 @@
+2017-10-12  Nathan Sidwell  <nathan@acm.org>
+
+       * cp-tree.h (cp_expr): Add const operator * and operator->
+       accessors.
+       (cp_tree_node_structure_enum): Delete TS_CP_BINDING,
+       TS_CP_WRAPPER, LAST_TS_CP_ENUM.
+
 2017-10-12  David Malcolm  <dmalcolm@redhat.com>
 
        * parser.c (get_required_cpp_ttype): New function.
index 4fb2dc8..dc98dd8 100644 (file)
@@ -65,7 +65,9 @@ public:
   /* Implicit conversions to tree.  */
   operator tree () const { return m_value; }
   tree & operator* () { return m_value; }
+  tree operator* () const { return m_value; }
   tree & operator-> () { return m_value; }
+  tree operator-> () const { return m_value; }
 
   tree get_value () const { return m_value; }
   location_t get_location () const { return m_loc; }
@@ -1467,11 +1469,9 @@ enum cp_tree_node_structure_enum {
   TS_CP_IDENTIFIER,
   TS_CP_TPI,
   TS_CP_PTRMEM,
-  TS_CP_BINDING,
   TS_CP_OVERLOAD,
   TS_CP_BASELINK,
   TS_CP_TEMPLATE_DECL,
-  TS_CP_WRAPPER,
   TS_CP_DEFAULT_ARG,
   TS_CP_DEFERRED_NOEXCEPT,
   TS_CP_STATIC_ASSERT,
@@ -1480,8 +1480,7 @@ enum cp_tree_node_structure_enum {
   TS_CP_LAMBDA_EXPR,
   TS_CP_TEMPLATE_INFO,
   TS_CP_CONSTRAINT_INFO,
-  TS_CP_USERDEF_LITERAL,
-  LAST_TS_CP_ENUM
+  TS_CP_USERDEF_LITERAL
 };
 
 /* The resulting tree type.  */