On 04/25/2012 01:41 AM, Jason Merrill wrote:
On 04/24/2012 05:24 PM, Paolo Carlini wrote:
Perhaps we aren't checking default arguments unless they're actually
used; a could change that if they aren't dependent.

Your reply reached the mailing list a bit mangled, could you please
clarify?
If the default argument isn't dependent on other template parameters, we can check immediately whether it is a suitable template argument for its parameter, including being a constant expression.
Just wanted to add that we should indeed do this also to catch things like:

    struct blah { int member; };

    template <char param = &blah::member>
    class template6_blah;

which currently we are also missing.

Paolo.



Reply via email to