首页 > 其他 > 详细

一条忽略的告警引发的coredump

时间:2020-05-12 14:57:37      阅读:50      评论:0      收藏:0      [点我收藏+]
遇到一个问题,莫名其妙的出现coredump。期望返回的是指针值,但是返回值有截断的效果。

(gdb) p hash_table
$1 = (sf_ht_t ) 0xffffffffe0d66e00 -------->截断值,高32位为F,低32位正确。
(gdb) p ht_table
$2 = (struct sf_ht
) 0x7f82e0d66e00 --------->正确值

aaa.c:1130:38: warning: initialization of ‘sf_ht_t ’ {aka ‘struct sf_ht ’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
由于没有及时处理代码中的告警。将返回值的指针值系统优化为int。导致程序coredump。

问题原因是:
函数调用时,找不到函数定义。没有引用头文件导致的。
总结:正确对待,程序编译过程中的每一个warning。

一条忽略的告警引发的coredump

原文:https://blog.51cto.com/qiaopeng688/2494559

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!