to the value matching SELECTED_FRAME as set by get_current_arch.  */
 
   parser_state ps (lang, get_current_arch (), expression_context_block,
-                  expression_context_pc,
-                  (flags & PARSER_COMMA_TERMINATES) != 0,
-                  *stringptr,
-                  completer != nullptr, tracker,
-                  (flags & PARSER_VOID_CONTEXT) != 0);
+                  expression_context_pc, flags, *stringptr,
+                  completer != nullptr, tracker);
 
   scoped_restore_current_language lang_saver;
   set_language (lang->la_language);
 
                struct gdbarch *gdbarch,
                const struct block *context_block,
                CORE_ADDR context_pc,
-               int comma,
+               parser_flags flags,
                const char *input,
                bool completion,
-               innermost_block_tracker *tracker,
-               bool void_p)
+               innermost_block_tracker *tracker)
     : expr_builder (lang, gdbarch),
       expression_context_block (context_block),
       expression_context_pc (context_pc),
-      comma_terminates (comma),
+      comma_terminates ((flags & PARSER_COMMA_TERMINATES) != 0),
       lexptr (input),
       parse_completion (completion),
       block_tracker (tracker),
-      void_context_p (void_p)
+      void_context_p ((flags & PARSER_VOID_CONTEXT) != 0)
   {
   }
 
 
 {
   /* Set up dummy "parser", so that rust_type works.  */
   struct parser_state ps (language_def (language_rust), target_gdbarch (),
-                         nullptr, 0, 0, nullptr, 0, nullptr, false);
+                         nullptr, 0, 0, nullptr, 0, nullptr);
   rust_parser parser (&ps);
 
   rust_lex_test_one (&parser, "", 0);