gpt4 book ai didi

c++ - 将可变参数模板发送到结构时出现内部编译器错误 : Segmentation fault in gcc .

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:36:30 26 4
gpt4 key购买 nike

我正在尝试编译以下代码:

#include <iostream>

template<template <typename...> class Container,class... Args>
struct Container
{};

template<class T1,class T2>
struct Store
{};

int main()
{
Container<Store,int,double> a;
}
//g++ -Wall -std=c++11 main.cpp

ideone

我正在使用 gcc 4.8.1,但出现以下错误:

internal compiler error: Segmentation fault
struct Container
^

为什么 gcc 不编译呢?该代码是否正确?

最佳答案

用 Clang 编译显示错误:

main.cpp:4:8: error: declaration of 'Container' shadows template parameter
struct Container

如果重命名结构或模板参数,代码也会在 g++ 中编译,我不知道它们的相同名称是偶然的还是故意的。


此外,g++ 4.8.2 和 4.9 工作正常,并给出与 Clang 类似的错误。

关于c++ - 将可变参数模板发送到结构时出现内部编译器错误 : Segmentation fault in gcc .,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24079072/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com