[NFC] Add tests from my fix for GH62362.
This ended up being fixed separately by @rsmith in1e43349e3in a better/correct way. This patch adds the tests from the original, as though they are reasonably covered in his patch, explicit versions seem to have value here. Additionally, this adds a release note for1e43349e3.
This commit is contained in:
@@ -327,6 +327,10 @@ Bug Fixes in This Version
|
||||
(`#62122 <https://github.com/llvm/llvm-project/issues/62122>`_)
|
||||
- Fix crash when handling undefined template partial specialization
|
||||
(`#61356 <https://github.com/llvm/llvm-project/issues/61356>`_)
|
||||
- Fix a crash caused by incorrectly evaluating constraints on an inheriting
|
||||
constructor declaration.
|
||||
(`#62361 <https://github.com/llvm/llvm-project/issues/62361>`_)
|
||||
(`#62362 <https://github.com/llvm/llvm-project/issues/62362>`_)
|
||||
|
||||
Bug Fixes to Compiler Builtins
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -68,3 +68,25 @@ namespace no_early_substitution {
|
||||
C();
|
||||
}
|
||||
}
|
||||
|
||||
namespace GH62362 {
|
||||
template<typename T>
|
||||
concept C = true;
|
||||
template <typename T> struct Test {
|
||||
Test()
|
||||
requires(C<T>);
|
||||
};
|
||||
struct Bar : public Test<int> {
|
||||
using Test<int>::Test;
|
||||
};
|
||||
template <>
|
||||
struct Test<void> : public Test<int> {
|
||||
using Test<int>::Test;
|
||||
};
|
||||
|
||||
void foo() {
|
||||
Bar();
|
||||
Test<void>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user