http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58834
Marc Glisse <glisse at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |glisse at gcc dot gnu.org --- Comment #1 from Marc Glisse <glisse at gcc dot gnu.org> --- Most likely (didn't launch gdb to check what was failing) --- typeck.c (revision 203915) +++ typeck.c (working copy) @@ -4942,7 +4942,7 @@ build_x_vec_perm_expr (location_t loc, { if (processing_template_decl && (type_dependent_expression_p (arg0) - || type_dependent_expression_p (arg1) + || (arg1 && type_dependent_expression_p (arg1)) || type_dependent_expression_p (arg2))) return build_min_nt_loc (loc, VEC_PERM_EXPR, arg0, arg1, arg2); return c_build_vec_perm_expr (loc, arg0, arg1, arg2, complain & tf_error); or --- pt.c (revision 203915) +++ pt.c (working copy) @@ -20510,7 +20510,7 @@ type_dependent_expression_p (tree expression) if (!processing_template_decl) return false; - if (expression == error_mark_node) + if (!expression || expression == error_mark_node) return false; /* An unresolved name is always dependent. */