erichkeane added inline comments.
================ Comment at: clang/test/CXX/temp/temp.arg/temp.arg.template/p3-2a.cpp:60-62 + // A naive individual might expect the following to all fail concept checking, + // but there does not seem to be any requirement to check these in the + // standard, and none of the other implementations do so either. ---------------- cor3ntin wrote: > erichkeane wrote: > > cor3ntin wrote: > > > cor3ntin wrote: > > > > erichkeane wrote: > > > > > aaron.ballman wrote: > > > > > > I agree that none of the other implementations seems to be checking > > > > > > constraints here, but I would have guessed that > > > > > > https://eel.is/c++draft/temp.arg.template#3 was what would trigger > > > > > > checking the constraints here (the `and for template > > > > > > template-parameters, each of their corresponding > > > > > > template-parameters matches, recursively.` bit, specifically). > > > > > > > > > > > > Usually the answer to "Am I misreading the standard or are these > > > > > > three implementations all wrong in the same way?" is "I misread the > > > > > > standard.", but I'd appreciate some confirmation here. :-) > > > > > >>Usually the answer to "Am I misreading the standard or are these > > > > > >>three implementations all wrong in the same way?" is "I misread the > > > > > >>standard." > > > > > > > > > > This is typically _MY_ response to this as well, so I was hoping > > > > > @rsmith or @hubert.reinterpretcast could tell me the answer here (and > > > > > perhaps help write a Core issue if the implementations are all > > > > > 'right'). > > > > I've spent the last hour trying to come up with scenarios where GCC > > > > does something interesting here, or where there would be a use for this > > > > here, but I have nothing. > > > I am a bit confused by GCC https://godbolt.org/z/TTrP81jjx > > Huh.... is this some level of the subsumes check that needs to happen? > > Though you show that the 'same constraint name + more info' thing doesn't > > work? I'm very confused... > My current reading of the tea leaves (with no confidence whatsoever) is that > the require clauses should match - aka be exactly the same. > And in the last case, maybe GCC has a bug where it fails to do the check if > the template argument has no require clause whatsoever. > Maybe? Maybe? But MSVC's implementation doesn't seem to be checking at all either: https://godbolt.org/z/nbY8EEG1M CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110641/new/ https://reviews.llvm.org/D110641 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits