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

            Bug ID: 117281
           Summary: Concepts and variadic template: internal compiler
                    error
           Product: gcc
           Version: 14.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: weidmann at acm dot org
  Target Milestone: ---

g++ (Compiler-Explorer-Build-gcc--binutils-2.42) 14.2.0

Getting an internal compiler error when compiling the following code with 'g++
-std=c++20'

#include <concepts>
#include <string>

template<typename...> using always_string = std::string;

template<template<std::integral> typename T> struct first_ok {
    T<int> value;
};

first_ok<always_string> first;

template<template<typename, typename> typename T> struct second_ok {
    T<int, long> value;
};

second_ok<always_string> second;

template<template<typename, std::integral> typename T> struct triggers_bug {
    T<int, long> value;
};

triggers_bug<always_string> bad;

Reply via email to