Repository navigation
[GNATS 21653] Spurious diagnostic for lookup of name in explicit destructor call #110
jhsedg
started this conversation in
Issue Triage - General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Customer bug ID
gnats/21653.C - (boost)optional_test_member_T.cpp
Description
This boost test has been reduced by Intel in PR 19507.
The full expanded test is in gnats/21653.C
Notes
ellen, 2021-02-15:
//type:fp
//options_all:--gnu 80100 -w --c++17
struct Status;
class aligned_storage {
public:
Status ref();
};
template class optional_base {
protected:
~optional_base() { m_storage.ref().T::~T(); }
aligned_storage m_storage;
};
class optional : optional_base {
public:
optional(Status);
};
struct Status {
enum T {};
};
void test_member_T() { optional x = Status(); }
fe_only -DTEST_NUMBER=1 --gnu 80100 -w --c++17 Test_name.c
"Test_name.c", line 10: error: invalid destructor name for type "Status"
~optional_base() { m_storage.ref().T::~T(); }
^
1 error detected in the compilation of "Test_name.c".
23918a.C:fp::FAIL--NO PREVIOUS OUTPUT:
Clang and MVCS also gives a diagnostic. https://godbolt.org/z/esTMbs
All reactions