Имею проект C++ под qmake с иерархической структурой TEMPLATE=SUBDIRS
Module1
ModuleStaticLib1
UnutTest1
Module2
ModuleStaticLib2
UnutTest2
Module3
Приложение
В каждом подпроекте могут быть *.cpp файлы с одинаковыми именами
Module1/ModuleStaticLib1/Controller.cpp - реализация класса namespace Module1::Controller
UnitTest1/Controller.cpp - юнит тест класса Module1::Controller
Module2/ModuleStaticLib2/Controller.cpp - реализация Module2::Controller
UnitTest2/Controller.cpp - юнит тест класса Module2::Controller
Работаю в qtcreator. Обратил внимание на странный баг при отладке, если установить точку останова в UnitTest1/Controller.cpp, она ставится также и в Module1/ModuleStaticLib1/Controller.cpp (может и в другие одноименные файлы, но я гоняю один тест). В рамках одного модуля имена файлов не повторяются.
Кроме того мой коллега, выразил сомнение в таком подходе, могут быть проблемы со сборкой(я не замечал). На сколько корректно использование одинаковых имен в разных модулях, и чем может быть баг с точками оcтанова qtcreator или GDB?
QtCreator 3.5.81
gcc version 4.8.4
GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.2) 7.7.1
Linux Mint17
PS Демонстрация структуры "Глюкодрома" =)
Ответ
По-моему, опция "Set breakpoints using a full absolute path" решает проблему с дублированием точек останова.
Комментариев нет:
Отправить комментарий