首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >摆脱"warning: dereferencing -punned指针“

摆脱"warning: dereferencing -punned指针“
EN

Stack Overflow用户
提问于 2012-03-16 17:18:03
回答 4查看 1.4K关注 0票数 1

我正在用一个简单的Hello World示例来试用OpenCobol。

代码语言:javascript
复制
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
PROCEDURE DIVISION.
    DISPLAY "Hello World".
    STOP RUN.

我用以下命令编译:

代码语言:javascript
复制
cobc -x -free -o hello hello.cbl

得到了一个可行的可执行文件,但也有很多来自gcc的警告

代码语言:javascript
复制
warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]

从谷歌搜索中,我所能找到的就是我可以忽略这些,而不会产生任何负面影响。但出于各种原因,我想实际上摆脱它们,如果没有其他事情,那么至少要以某种方式抑制它们。我该怎么做呢?

EN

回答 4

Stack Overflow用户

发布于 2012-10-10 15:43:24

使用-O来降低优化。

我本以为这是应用于C代码生成,而不是传递给gcc。

如果你更喜欢绝对控制gcc,

编写一个脚本来包装您的构建。(步骤1)从cobc生成翻译后的C代码。(通过2)使用gcc进行编译(优化程度较低)。在一个大型项目中,你可以嵌套脚本来构建一个完整的版本。

票数 3
EN

Stack Overflow用户

发布于 2012-11-25 15:14:24

请原谅迟到的便条;

为了控制C编译阶段,OpenCOBOL在构建链中考虑了一些环境变量。

有关列表,请参见http://opencobol.add1tocobol.com/#does-opencobol-work-with-llvm,其中包括COB_CFLAGS和COB_LDFLAGS

票数 1
EN

Stack Overflow用户

发布于 2012-03-26 11:26:04

this OpenCobol forum thread中,看起来您需要使用-fno-strict-aliasing选项。无法在此处尝试,因为我们不使用OpenCobol。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9734558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档