https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91845
--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
I suggest:
--- a/gcc/cp/typeck2.c
+++ b/gcc/cp/typeck2.c
@@ -2068,12 +2068,12 @@ build_m_component_ref (tree datum, tree component,
tsubst_flags_t complain)
tree binfo;
tree ctype;
- if (error_operand_p (datum) || error_operand_p (component))
- return error_mark_node;
-
datum = mark_lvalue_use (datum);
component = mark_rvalue_use (component);
+ if (error_operand_p (datum) || error_operand_p (component))
+ return error_mark_node;
+
ptrmem_type = TREE_TYPE (component);
if (!TYPE_PTRMEM_P (ptrmem_type))
{
because mark_[lr]value_use can cope with error_mark_node.