]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/cp/parser.h
PR c++/88548 - this accepted in static member functions.
[thirdparty/gcc.git] / gcc / cp / parser.h
index 81abb69ef3de00e4222e0fcb2631b449ac2ab482..1d6cb2d424c8eb1819844e31dfa5b47058d03676 100644 (file)
@@ -282,9 +282,12 @@ struct GTY(()) cp_parser {
      been seen that makes the expression non-constant.  */
   bool non_integral_constant_expression_p;
 
-  /* TRUE if local variable names and `this' are forbidden in the
-     current context.  */
-  bool local_variables_forbidden_p;
+  /* Used to track if local variable names and/or `this' are forbidden
+     in the current context.  */
+#define LOCAL_VARS_FORBIDDEN (1 << 0)
+#define THIS_FORBIDDEN (1 << 1)
+#define LOCAL_VARS_AND_THIS_FORBIDDEN (LOCAL_VARS_FORBIDDEN | THIS_FORBIDDEN)
+  unsigned char local_variables_forbidden_p;
 
   /* TRUE if the declaration we are parsing is part of a
      linkage-specification of the form `extern string-literal