问题标签 [compiler-bug]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 多重继承使私有成员可访问
即使 B 私下继承了 A,这也会编译。如果我删除 D 对 C 的继承,编译器会说 a 不可访问,就像我期望的那样。那么 C 的继承会让我的编译器感到困惑吗?
编译器是 gcc 4.4.7
c++ - Visual Studio 2013 中的 select_on_container_copy_construction 内部错误
我在 Visual Studio 2013 中遇到内部编译器错误。确切的错误是
这指向我在 std::allocator_traits 的实现中的这段代码:
我认为问题与我为自定义分配器所做的实现有关。这个分配器是一个类模板,用于包装我在项目中使用且不符合标准的更简单的分配器(因此需要包装)。包装如下:
鉴于 Visual Studio 没有提供更多信息,我不知道如何解决这个问题。
c++ - 从删除了复制构造函数的类继承
我的类base
只包含私有默认构造函数和公共删除的复制构造函数,没有别的。
如果我尝试继承base
并创建derived
如下类的实例,g++ 4.8.2 不会编译我的代码,但 VC++ 2013 会。
那么,它是 g++ 或 VC++ 2013 中的一个错误,只是忽略了一些东西吗?
这是完整的代码...
...和 g++ 错误消息。
c# - 在 C# 中转换为“int”时,“const float”值与“float”不同
你们中的任何人都可以解释为什么会发生这种情况吗?
输出:
我知道 0.1 的二进制表示实际上是 0.09999990463256835937,但为什么使用“const float”而不是“float”会发生这种情况?这被认为是编译器错误吗?
作为记录,代码编译为:
c - 带有指定初始化程序的 MSVC12 (VS2013) 中可能的编译器错误
使用 VS2013 Update 2,我偶然发现了一些奇怪的错误消息:
GCC 和 Clang 都接受它。
我是否遗漏了什么或者这段代码是否暴露了编译器错误?
c++ - Visual Studio 2012 不同的值发布/调试模式
在调试和发布模式之间切换时,此代码在 MSVS 2012、Windows 7 中产生不同的值:
你能重现或找到原因吗?我一直在测试项目属性的各种设置。
- 调试(正确结果):32630400
- 发布:32814720
/GS /GL /analyze- /W3 /Gy /Zc:wchar_t /I"C:\Program Files (x86)\Visual Leak Detector\include" /Z7 /Gm- /O2 /Fd"Release\vc110.pdb" /fp:precise /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_UNICODE" /D "UNICODE" /errorReport:prompt /WX- /Zc:forScope /Gd /Oy- /Oi /MD /Fa"Release\" /EHsc /nologo /Fo"Release\" /Fp"Release\Testing.pch"
c++ - 为什么可变参数函数不能“吃掉”C++11 中的列表初始化参数?
示例代码是:
emplace()
有签名的地方,比如:
表示该gcc
函数需要 0 个参数 - 提供 2 个。clang
表示该函数需要 1 个参数 - 提供 2 个参数。
我什至不明白 - 这段代码有什么问题?
c++ - C++11 future.wait_for() 总是返回 future_status::timeout
我有一个 C++11 程序来检查一个数字是否是素数。有一个程序等待准备好的未来对象。准备好后,程序会告诉未来对象的提供者函数是否认为该数是素数。
如果你运行程序,你会看到它处于一个无限的while循环中,因为wait_for()
总是返回future_status::timeout
,这意味着共享状态永远不会准备好。这是什么原因?我从http://www.cplusplus.com/reference/future/future/wait_for/ 获取了这个程序,所以我希望它能够工作。但是,如果我注释掉 while 循环,程序就会正常工作。
c++ - 处理未实例化的模板函数
以下代码在 Visual C++ 2013 中编译,但不在 G++ 4.8.2 下:
Visual C++ 似乎忽略了通用模板函数,因为只MyFunc<float>
使用了特化。G++ 无论如何都会解析通用函数,并发现尚未定义 CCodes 枚举。
哪个是对的?还是这个实现定义的?
c++ - 可以在构造函数定义前加上“class”关键字吗?
请告诉我为什么当我将构造函数视为没有私有和公共部分的类时,我的程序会被编译和执行,只需class
在它前面写下这个词,如下所示: