GNOME Bugzilla – Bug 658143
Fails to support multiple breakpoints
Last modified: 2011-09-04 11:18:39 UTC
Sometimes setting a breakpoint to a given location can yield multiple actual breakpoints to set to different locations. For instance: $ cat -n ~/test.cc 1 struct S 2 { 3 int m_0; 4 int m_1; 5 6 S () 7 { 8 m_0 = 0; 9 m_1 = 0; 10 } 11 12 S (int a, int b) 13 { 14 m_0 = a; 15 m_1 = b; 16 } 17 }; 18 19 int 20 main() 21 { 22 S s0; 23 S s1 (2, 3); 24 } $ Setting a breakpoint to the location "S::S" (the constructor of S) actually sets two breakpoints; one to line 8 in the first constructor and one to line 14 in the second constructor. The problem is that Nemiver doesn't expect that. That situation violates a faulty assert in the code: |X|virtual void nemiver::OnBreakpointHandler::do_handle(nemiver::CommandAndOutput&):/home/dodji/devel/git/nemiver/master/src/dbgengine/nmv-gdb-engine.cc:1452:condition (bps.size () == 1) failed; raising exception
This is fixed in master by changeset 2c34fd0, as well as in gtk2-branch.