问题标签 [suncc]

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.

0 投票
2 回答
442 浏览

c++ - Sun 的 C++ 编译器的“弃用”表示法?

Sun 编译器是否具有将函数标记为已弃用的符号,例如 GCC__attribute__ ((deprecated))或 MSVC __declspec(deprecated)

0 投票
3 回答
1375 浏览

c++ - Sun C++ 编译器和 Boost

我目前正在 OpenSolaris 2009-06 上进行开发。Boost::MPL 文档似乎暗示不支持sun 编译器(该文档最后更新于 2004 年)。Boost 的顶级文档似乎表明支持 sun 编译器 5.10 及更高版本——我想这是一般级别的支持,还是包括 MPL?有没有人有关于 sun 5.10 编译器的 C++ 一致性状态的详细信息?

我总是可以使用 GCC 进行编译。

0 投票
0 回答
325 浏览

c++ - Sun CC 未链接或编译共享对象中的 fstream 模板

我对 Sun CC(主要是 6.2,但似乎也发生在 12.1)有一个问题,我似乎无法编译或链接到共享对象中的 fstream 模板。

我已将其从我正在工作的遗留系统中提取出来,并在此示例中复制了它。

C/C++ 共享对象(main.c):

还有一个 C 主程序 (main2.c):

编译库

编译C主程序

在 SunOS 5.8 上运行此程序会产生以下错误:

nm 证实了这一点:

我正在使用的编译器版本:

我应该试图说服 Sun CC 将 fstream 编译到我的库中吗?或者有没有我可以链接的图书馆?我无法更改为使用 stlport4 (http://developers.sun.com/solaris/articles/cmp_stlport_libCstd.html),因为它在 Sun CC 6.2(或 5.3...版本编号有什么用?)上不可用。

在 Linux 中编译并链接 libstdc++ 时,这似乎工作正常。我猜fstream被编译成libstdc++?(纳米似乎证实了这一点)。

0 投票
1 回答
404 浏览

compiler-construction - 有和没有编译器优化的并行 OpenMP 代码的性能 (Sun CC)

我正在做一个项目,我们被要求编写一个简单的 OpenMP 代码来并行化一个使用微分方程的程序。我们还被要求测试代码在有和没有编译器优化的情况下的性能。我正在使用 Sun CC 编译器,因此对于优化版本,我使用了选项

对于非优化

毫不奇怪,编译器优化的运行时间远低于其他情况。令我惊讶的是,非优化版本的缩放性能要好得多。在这里,我所说的性能是指加速系数,即程序运行在 M 个处理器上的运行时间与程序运行在 1 个处理器上的运行时间之比。

有人暗示这可能取决于优化版本受内存限制,而非优化版本受 CPU 限制的事实。我不确定“边界”如何影响我的代码的扩展能力。你有什么建议吗?

0 投票
1 回答
159 浏览

c++ - 基类的函数模板是否可以分配给指向成员函数的指针

以下代码是否应该在 C++98/03 中编译?

这个代码片段在我能够尝试的几乎所有编译器上都运行良好;保存 Sun C++ 5.11 和 Sun C++ 5.12。

那应该是一个错误吗?如果是这样,有谁知道它是否已报告给供应商(目前是 Oracle)?

编辑:

我将接受从 C++03 或 C++11 标准文档中提供适当相关引用的答案。或者,如果您可以提供有关 Oracle 错误报告的信息。

0 投票
1 回答
245 浏览

solaris - 使用 `-std=XXX` 时导致 SunCC 在 g3mangler.cc 中崩溃的原因是什么?

我正在尝试确定导致 SunCC 5.11 - 5.13 死机的../lnk/g3mangler.cc, line 825原因(来自 SunCC 5.13 的消息)。这是编译期间的样子。该机器是第 4 代 Core i5,因此它具有与宏相对应的功能。

我知道-std=c++03所有编译器和-std=c++11较新的编译器都会出现问题。如果我省略-std=XXX,那么问题就消失了。告诉用户他们不能使用 C++03 或 C++11 是不可行的。

这里是gcm.cpp:408。由于努力隔离,它现在基本上被注释掉了。事实上,删除所有代码并留下一个空函数也证明了这一点:

MAYBE_INLINE是我用来inline打开和关闭编译器的宏。

我能在网上找到的唯一报告来自我们的错误跟踪器。我已经没有想法了,因为我已经用尽了函数中的所有代码。

是什么原因导致 SunCC 编译器在g3mangler.cc使用时崩溃-std=XXX?我们如何解决它?

0 投票
1 回答
65 浏览

c++ - 在 GASM 内联中对参数“N”的无效引用

我正在使用 Developer Studio 12.5 附带的 SunCC 编译器在 Solaris 11.3 上构建Botan 。我对库或 Solaris 不太熟悉,我需要一些努力才能找到问题。

编译在一个名为divide.cpp. 我已将其简化为以下测试用例。根据Sun Studio 12 编译器中 Oracle 的 GCC 风格的 asm 内联支持,ASM 格式良​​好。Clang、GCC 和 ICC 愉快地使用代码。

我找不到有关错误字符串的有用信息Invalid reference to argument 'N' in GASM Inlining。我在 Oracle 板上的内联汇编器上发现了 sunCC 扼流圈。但答案是 UBE 有问题并购买支持合同以了解更多信息。

我有三个问题:

  • 错误信息表示什么?

  • 如何让 SunCC 提供源文件和行号?

  • 我该如何解决这个问题?


如果我将b参数更改为 just =m,则会产生相同的错误。如果我将b参数更改为 just =r,则会生成不同的错误:

结果:

0 投票
1 回答
588 浏览

c++ - 处理 utf8 编码的 char* 数组

文件包含非拉丁内容并以 UTF8 编码。目前现有代码使用“ fopen”打开文件,解析它并validate使用非拉丁内容调用我的函数,并将数据传递为char*.

我必须对传递的char数组进行一些验证。

该应用程序使用Sun C++ 5.11并且我认为不支持unicode. (我在 Sun C++ 5.11 上搜索了 unicode 支持,我没有得到任何关于 unicode 支持的正确指示。所以我编写了一个简单的程序来检查 Sun C++ 是否支持 unicode 并且程序没有编译)。

如何对输入进行验证char*?可以使用wchar_t吗?

0 投票
2 回答
1177 浏览

cmake - 如何让 CHECK_CXX_COMPILER_FLAG 因非法值而失败?

我们CMakeFile.txt包含以下 SunCC 代码路径。SunCC 使用-xarch=XXX而不是 GCC 样式-mXXX

当我们在 Sun 的编译器下运行 CMake 时,结果如下:

但是,当我们编译它时,结果是:

添加 SunCC-errwarn-errwarn=%all不能帮助 CMake 检测到故障。

该消息可能会给用户带来很多问题。它也违反了我们对干净编译的治理。我们想清理它并避免任何麻烦。

我们如何告诉 CMake 对CHECK_CXX_COMPILER_FLAG非法值的测试失败?

0 投票
1 回答
69 浏览

solaris - 是什么导致 bfd_asm.c 中的 SunCC 崩溃?

我正在尝试追查 SunCC 编译器崩溃的原因。它从早期的 SunCC 12.x 时代就已经存在,并且存在于最新的 SunCC 12.6 中。尝试在 x86 系统上乘以多项式时会发生崩溃。下面的代码是 GCM 算法的一部分:

和:

我无法找到有关由于bfd_asm.c:2602. 我相信这与使用时导致 g3mangler.cc 中的 SunCC 崩溃的原因相同-std=XXX,但它只是移动了。

迄今为止,我们的策略是在等待修复时禁用代码路径。它看起来不会很快得到修复,因此我们希望找到一种解决方法并重新启用代码。

是什么导致了崩溃,我该如何解决?


我认为这是 MCVE,虽然它不是很有用: