http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56958
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-04-26 14:23:27 UTC --- Well, you aren't using spurious, are you? Because t + spurious... expands to nothing. If mark_exp_read isn't called while processing_template_decl because the expression is type dependent, and during instantiation is lost altogether, not sure where could we call mark_rvalue_use etc.