0

I'm trying to understand a branch coverage report generated with gcov/lcov. This is a section of the output. The issue is on line 84 where I have a glaring minus sign next to a call to a stub function. The stub does not branching statements.

How does one interpret missing branch coverage on a function call?

  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--;

Thanks!

jih
  • 19
  • 1

1 Answers1

0

Turns out this is was a symptom of not handling exceptions.

See the related post for a quick fix my turning on -fno-exceptions when compiling.

Community
  • 1
  • 1
jih
  • 19
  • 1