Command flags for debugging template code
John Love-Jensen
eljay@adobe.com
Tue Mar 27 11:58:00 GMT 2007
Hi Stephen,
One of the problems with debugging (depending on the debugger and
environment) is break points with inline functions.
To give me a debug-able spot I can drop a breakpoint on, I've done this
before:
// --- Fruit.h ---
void EljayBreakpoint();
class Fruit
{
public:
template <typename Basket>
void print_Contents(Basket* container_ptr)
{
EljayBreakpoint();
std::cout << container_ptr->dump() << std::endl;
}
};
// --- Fruit.cpp ---
#include "Fruit.h"
void EljayBreakpoint()
{
std::cerr << "EljayBreakpoint: you are here\n";
}
And then I set the breakpoint inside EljayBreakpoint.
I now realize I haven't needed to do this trick in many years. So either
the debuggers are better on the platforms I'm using and can sensically step
into inline functions, or I'm making less boo-boos.
HTH,
--Eljay
More information about the Gcc-help
mailing list