Отправлено: 22.08.19 19:09. Заголовок: Баг компилятора gcc относительно унаследованных конструкторов для пакета параметров.
Сегодня открыл для себя следующий баг компилятора gcc HEAD 10.0.0 20190 относительно унаследованных конструкторов при использовании пакета параметров в using-объявлении.
Следующая демонстрационная программа не компилируется.
#include <iostream>
struct A { A() = default; A( int ) {} };
struct B { B() = default; B( const char * ) {} };
template <typename... Bases> struct C : Bases... { using Bases::Bases...; };
int main() { }
ошибка компиляции:
rog.cc:18:23: error: parameter packs not expanded with '...': 18 | using Bases::Bases...; | ^~~ prog.cc:18:23: note: 'Bases'
В то время если использовать компилятор clang HEAD 9.0.0, то программа успешно компилируется.
Все даты в формате GMT
3 час. Хитов сегодня: 421
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет