解释函数调用

时间:2016-02-26 17:42:00

标签: c gcov lcov

我试图理解使用gcov / lcov生成的分支覆盖率报告。这是输出的一部分。问题出在第84行,我在调用存根函数旁边有一个明显的减号。存根不分支语句。

如何解释函数调用中缺少的分支覆盖?

  81 [ +  + ][ +  + ]:         28 :   if(SerialIO_response_count > 0 && SerialIO_tx_read != SerialIO_tx_write ){
  82                 :            : 
  83                 :         16 :     tx_char = SerialIO_get_next_from_buffer(TX_BUFFER);
  84         [ +  - ]:         16 :     usart_write_job(SerialIO_usart_module, &tx_char);
  85                 :            :     
  86                 :            :     // Decrement response count if CR transmitted
  87         [ +  + ]:         16 :     if(tx_char == '\r')
  88                 :          4 :       SerialIO_response_count--;

谢谢!

1 个答案:

答案 0 :(得分:0)

原来这是不处理异常的症状。

请参阅related post以便快速修复我在编译时启用-fno-exceptions。