I can still reproduce this bug on Solaris SPARC with 7.0.86747. While stopped in the debugger when the contract was violated, I got some extra information: positions_and_sizes_try.item.pos = 368 l_tool_bars.at(positions_and_sizes_try.index).size = 599 sum of the above two expressions = 967 tool_bar_row.size = 966 Since 967 <= 966 is False, the check assertion was violated. Note also that reproducing the problem is simpler than the steps in the original report. Just open a project with standard default layout, resize the window a bit narrower so that the Stop Execution button is the last one visible in the top tool bar. Then undock the Standard buttons tool bar by moving to the left a bit, but keep mouse button held down. Move it back to its original position still keeping mouse button down. Check assertion is violated before mouse button is released.