Elementary question about complete_type vs tsubst_flags_t

Jason Merrill jason@redhat.com
Fri Jul 10 13:42:00 GMT 2015


On 07/10/2015 07:26 AM, Paolo Carlini wrote:
> I have an old question about an issue which I noticed a while ago, and
> for example clearly shows up in c++/62085: in a few places in pt.c we
> call complete_type from functions getting a tsubst_flags_t. Clearly,
> complete_type often calls instantiate_class_template_1, which, in turn,
> often calls tsubst with an hard-coded tf_error. Thus possible errors
> coming from an initial tf_none.

Yep.  Those errors are outside the "immediate context" of the 
substitution, so SFINAE doesn't apply to them.  In C++ we don't back out 
of a class instantiation.

Jason



More information about the Gcc mailing list