It is bad with C/C++
Unfortunately, I use Pascal and there it is even worse
GDB tries to parse Pascal syntax in print, but many expressions do not work. It is almost a mix of Pascal and C.
The integration in the Lazarus IDE makes it even worse, when you cannot enter all expressions. And there are so many bugs. You get GDB crashing, Lazarus crashing, or GDB freezing the entire X server if it pauses the program in a bad moment. Then you need to restart the system or kill GDB from outside the X server.