I'm working on the rewriting of some code in a c++ cmd line program.
I changed the low level data structure that it uses and the new version passes all the tests (quite a lot) without any problem and I get the correct output from both the new and the old version... Still, when give certain input, they give different behaviour.
Getting to the point: Being somewhat of a big project I don't have a clue about how to track down when the execution flow diverges, so... is there way to trace the function call tree (possibly excluding std calls) along with, i don't know, line number in the source file and source name? Maybe some gcc or macro kungfu?
I would need a Linux solution since that's where the program runs.