zygoloid wrote:
It looks like the same bug might exist for other recoverable type errors (where
we successfully form a `QualType` in substitution despite producing a
diagnostic). For example, we reject-valid on this too:
```c++
template <char N> struct Foo {
operator int() const requires(N == 2);
template <int M = 1234, Foo<M>* = nullptr> operator long() const;
};
void test () {
Foo<2> foo;
long bar = foo;
}
```
Could this be a bug in the handling of substitution into the type of a non-type
template parameter, not something specific to array types?
https://github.com/llvm/llvm-project/pull/170144
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits