Hi, gdb-7.2 seems to have some trouble with c++ symbol completion for setting break points which did not show up in gdb-7.1 and earlier (built myself with gcc-4.3.2 on opensuse 11.1 64bit):
a) for the small hello-world program below, when I try to set a bp to "h1" by typing b 'h1<TAB> sometimes gdb immediately completes to 'h1()' -- no other signatures are shown. this happend several times (new gdb processes) when testing this bug sample, but right now it's correctly working again as expected: (gdb) b 'h1<TAB> h1 h1() h1(char*) h1(int) (gdb) b 'h1 ------------------------------------------------------------------------------- #include <iostream> void h1() { std::cout << "Hello\n"; } void h1(int i) { std::cout << "Hello " << i << "\n"; } void h1(char *s) { std::cout << "Hello " << s << "\n"; } int main() { h1(); h1(1); h1("2"); } ------------------------------------------------------------------------------- b) from a colleague who first pointed at the gdb07.2 problems using the attached "gdb.bug-cpp": "Junk at end of arguments" Using gcc-4.4.3 > gdb ./gdb-bug GNU gdb (GDB) 7.2 Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-unknown-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /home/hrenka/test/cpp/gdb-bug...done. (gdb) b 'osg::Program::PerContextProgram::linkProgram()' Junk at end of arguments. (gdb) b 'osg::Program::PerContextProgram::linkProgram()' Breakpoint 1 at 0x4009ba: file gdb-bug.cpp, line 18. (gdb) - First try: use autocompletion, which gives an extra space after closing hyphen. Second try: use history and remove extra space. Harald Koenig -- "I hope to die ___ _____ before I *have* to use Microsoft Word.", 0--,| /OOOOOOO\ Donald E. Knuth, 02-Oct-2001 in Tuebingen. <_/ / /OOOOOOOOOOO\ \ \/OOOOOOOOOOOOOOO\ \ OOOOOOOOOOOOOOOOO|// Harald Koenig \/\/\/\/\/\/\/\/\/ science+computing ag // / \\ \ koe...@science-computing.de ^^^^^ ^^^^^ -- Vorstand/Board of Management: Dr. Bernd Finkbeiner, Dr. Roland Niemeier, Dr. Arno Steitz, Dr. Ingrid Zech Vorsitzender des Aufsichtsrats/ Chairman of the Supervisory Board: Michel Lepert Sitz/Registered Office: Tuebingen Registergericht/Registration Court: Stuttgart Registernummer/Commercial Register No.: HRB 382196
#include <iostream> namespace osg { class Uniform { }; class Program { public: bool apply(osg::Uniform const& uni) const { std::cout << "Applying" <<std::endl; } class PerContextProgram { public: bool apply(osg::Uniform const& uni) const { std::cout << "Applying" <<std::endl; } void linkProgram() { std::cout << "Linking" <<std::endl; } }; }; } int main(int arg, char* argv[]) { osg::Uniform uni; osg::Program prog; prog.apply(uni); osg::Program::PerContextProgram pProg; pProg.linkProgram(); pProg.apply(uni); return 0; }
_______________________________________________ bug-gdb mailing list bug-gdb@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gdb