https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113620

            Bug ID: 113620
           Summary: Specialized Template
           Product: gcc
           Version: 13.2.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hans.buchmann.wantuch at gmail dot com
  Target Milestone: ---

Created attachment 57225
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57225&action=edit
Bug report generated with: -freport-bug

Compiling the code bug-1.cc

------8<------8<------8<------8<------
class CRC
{
 public:
  template<typename T>
  struct Def
  {
   using TYP=T;
   static const TYP INIT=0;
  };

  enum Method {MSB_FIRST,LSB_FIRST};

  template<Method M,typename DEF>
  class BIT{};

  template<typename DEF>
  struct BIT<MSB_FIRST,DEF>
  {
    DEF::TYP r=DEF::INIT;
  };
};

int main(int argc,char** args)
{
 CRC::BIT<CRC::MSB_FIRST,CRC::Def<unsigned short>> crc;
 return 0;
}
------8<------8<------8<------8<------

compiling with:

g++ -freport-bug -std=c++2a -c -o bug-1.o bug-1.cc

results in the following output:

see attached bug-report.txt

Sincerely

Hans Buchmann

Reply via email to