Valgrind不报告返回指向堆栈分配字符串

时间:2017-10-18 11:54:15

标签: c valgrind

我正在使用valgrind 3.12 for mips(mipsel)平台。我发现在以下示例中:

static char * return_stack_allocated_value(void)
{
   char x[100];
   snprintf(x,100,"Test test test");
   return x;
}

int main()
{
   char *bad;
   bad = return_stack_allocated_value();
   printf("Result: %s\n",bad);
}

valgrind不报告任何错误,尽管我们不能再使用指向坏的指针。

我使用以下选项运行valgrind

--10-- Valgrind options:                                                                                                                                                                                
--10--    --main-stacksize=16777216                                                                                                                                                                     
--10--    --malloc-fill=0xab                                                                                                                                                                            
--10--    --free-fill=0x70                                                                                                                                                                              
--10--    --leak-check=full                                                                                                                                                                             
--10--    --leak-resolution=high                                                                                                                                                                        
--10--    --num-callers=50                                                                                                                                                                              
--10--    --trace-children=yes                                                                                                                                                                          
--10--    --track-origins=yes                                                                                                                                                                           
--10--    --log-file=/tmp/test_%p.log   

有可能用valgrind发现这样的问题吗?应该使用哪些选项?

0 个答案:

没有答案