This is an archive of the discontinued LLVM Phabricator instance.

Test-patch for https://reviews.llvm.org/D134128 alternative
AbandonedPublic

Authored by erichkeane on Oct 21 2022, 10:09 AM.

Details

Reviewers
lime
Summary

See the direction< It causes a number of partial-specialization problems (Class template partial specialization is not more specialized than the primary template),but I suspect I'm instantiating a concept I shouldnt be elsewhere as well.

Diff Detail

Event Timeline

erichkeane created this revision.Oct 21 2022, 10:09 AM
Herald added a project: Restricted Project. · View Herald TranscriptOct 21 2022, 10:09 AM

Failures I saw:

FAIL: Clang :: CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp (9218 of 17395)
******************** TEST 'Clang :: CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp' FAILED ********************
Script:
--
: 'RUN: at line 1';   /localdisk2/ekeane1/workspaces/delayed-concepts/build/bin/clang -cc1 -internal-isystem /localdisk2/ekeane1/workspaces/delayed-concepts/build/lib/clang/16.0.0/include -nostdsysteminc -std=c++2a -x c++ -verify /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp
--
Exit Code: 1

Command Output (stderr):
--
error: 'error' diagnostics seen but not expected:
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp Line 19: class template partial specialization is not more specialized than the primary template
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp Line 89: class template partial specialization is not more specialized than the primary template
error: 'note' diagnostics expected but not seen:
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp Line 3 (directive at /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp:4): similar constraint expressions not considered equivalen
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp Line 7 (directive at /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp:8): similar constraint expression here
error: 'note' diagnostics seen but not expected:
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp Line 16: template is declared here
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp Line 83: template is declared here
6 errors generated.

--

********************
FAIL: Clang :: CXX/temp/temp.decls/temp.fct/temp.func.order/p6.cpp (11341 of 17395)
******************** TEST 'Clang :: CXX/temp/temp.decls/temp.fct/temp.func.order/p6.cpp' FAILED ********************
Script:
--
: 'RUN: at line 1';   /localdisk2/ekeane1/workspaces/delayed-concepts/build/bin/clang -cc1 -internal-isystem /localdisk2/ekeane1/workspaces/delayed-concepts/build/lib/clang/16.0.0/include -nostdsysteminc -fsyntax-only -verify -std=c++20 /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.decls/temp.fct/temp.func.order/p6.cpp
--
Exit Code: 1

Command Output (stderr):
--
error: 'error' diagnostics seen but not expected:
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.decls/temp.fct/temp.func.order/p6.cpp Line 97: class template partial specialization is not more specialized than the primary template
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.decls/temp.fct/temp.func.order/p6.cpp Line 99: class template partial specialization is not more specialized than the primary template
error: 'note' diagnostics seen but not expected:
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.decls/temp.fct/temp.func.order/p6.cpp Line 95: template is declared here
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.decls/temp.fct/temp.func.order/p6.cpp Line 95: template is declared here
4 errors generated.

--

********************
FAIL: Clang :: CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp (12212 of 17395)
******************** TEST 'Clang :: CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp' FAILED ********************
Script:
--
: 'RUN: at line 1';   /localdisk2/ekeane1/workspaces/delayed-concepts/build/bin/clang -cc1 -internal-isystem /localdisk2/ekeane1/workspaces/delayed-concepts/build/lib/clang/16.0.0/include -nostdsysteminc -std=c++2a -x c++ -verify /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp
--
Exit Code: 1

Command Output (stderr):
--
error: 'error' diagnostics seen but not expected:
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp Line 18: variable template partial specialization is not more specialized than the primary template
error: 'note' diagnostics expected but not seen:
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp Line 3 (directive at /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp:4): similar constraint expressions not considered equivalent
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp Line 7 (directive at /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp:8): similar constraint expression here
error: 'note' diagnostics seen but not expected:
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp Line 15: template is declared here
4 errors generated.

--

********************
FAIL: Clang :: SemaTemplate/concepts-GH53354.cpp (17193 of 17395)
******************** TEST 'Clang :: SemaTemplate/concepts-GH53354.cpp' FAILED ********************
Script:
--
: 'RUN: at line 1';   /localdisk2/ekeane1/workspaces/delayed-concepts/build/bin/clang -cc1 -internal-isystem /localdisk2/ekeane1/workspaces/delayed-concepts/build/lib/clang/16.0.0/include -nostdsysteminc -std=c++20 -verify /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/SemaTemplate/concepts-GH53354.cpp
--
Exit Code: 1

Command Output (stderr):
--
error: 'error' diagnostics seen but not expected:
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/SemaTemplate/concepts-GH53354.cpp Line 20: class template partial specialization is not more specialized than the primary template
error: 'note' diagnostics seen but not expected:
  File /localdisk2/ekeane1/workspaces/delayed-concepts/clang/test/SemaTemplate/concepts-GH53354.cpp Line 16: template is declared here
2 errors generated.

--

********************
                                                                                                    -- Testing: 17395 tests, 96 workers --
********************
Failed Tests (4):
  Clang :: CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp
  Clang :: CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp
  Clang :: CXX/temp/temp.decls/temp.fct/temp.func.order/p6.cpp
  Clang :: SemaTemplate/concepts-GH53354.cpp

As you can see, they are all about the same symptom, so I'm just hoping we need to change how we instantiate that constraint slightly? Maybe we should still instantiate when doing partial-specialization application, and this causes it to skip? Or maybe the 'other side' needs constraints to stop being instantiated?

lime resigned from this revision.Oct 28 2022, 12:08 AM
erichkeane abandoned this revision.Oct 28 2022, 6:02 AM