This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] Make vector::at() assertion message more useful (try #2)

Paolo Carlini <> writes:

> Paul, the *.cc are built with implicit instantiations disabled and we are
> missing explicit instantiations of this function template. If I remember
> correctly, we normally instantiate it in only for unsigned
> long and unsigned long long as second template argument. Thus, I would
> say, either make sure to use only those two in the new code, or add
> explicit instantiations. I would rather prefer the former, for example
> casting __val to (unsigned long long) in __concat_size_t isn't
> particularly elegant (vs for example checking if size_t isn't either
> unsigned long neither unsigned long long and adding an explicit
> instantiation only in that case)

What's wrong with always adding the instantiation?

> but would work I think. In any case, if it works for Andreas he is
> also preapproved to commit this kind change to unbreak his target.

There are a lot of targets using unsigned int for size_t, which would
have been uncovered by proper testing.


Andreas Schwab, SUSE Labs,
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]