This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

C++ PATCH for c++/79960, partial ordering with alias template


The semantics of alias templates are still pretty unclear, but this
testcase looks like it ought to work.  I decided to make it work by
treating partial ordering specially; while normally a use of a
non-transparent alias template compares as distinct from its
expansion, as necessary for proper redeclaration handling, when
comparing the result of deduction and substitution to our goal we
can't be so strict.  In this testcase, we end up comparing

const __has_tuple_size<volatile __has_tuple_size <T>>

to

const volatile __has_tuple_size<T>

which are not the same for SFINAE, but let's treat them the same for ordering.

Tested x86_64-pc-linux-gnu, applying to trunk.

Attachment: 79960.diff
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]