Hi all, I got a fail in gdb.cp/psmang.exp while debugging gdbserver, related to the fact that I have debug info in my c startup files, which in turn made me have the current language set to c. The test tried to do a break like, break A::method , which failed, because the current way of finding struct/union methods doesn't take into account the language of A. When we get to linespec.c:find_method, if we know that A is a c++ class, we know that 'method' is a c++ method. I've looked at several ways to fix it, and all but this one turned out more invasive than I hoped for, because current_language is used in a several places (in symtab.c). Instead, I simply wrapped linespec.c:find_method with a set_language (lang of A), guarded with a cleanup. With class A from the new testcase in the patch, before: (gdb) set lang c (gdb) b A::method the class A does not have any method named method Hint: try 'A::method or 'A::method (Note leading single quote.) after: (gdb) set lang c [0] cancel [1] all [2] A::method(A*) at main.cc:17 [3] A::method(int) at main.cc:12 [4] A::method() at main.cc:7 Tested on i686-pc-cygwin, OK? Cheers, Pedro Alves