Не спорю, но этим ведь занимаются статические анализаторы а не ты
gtk и прочие гуевины типа sdl как раз имхо пример крайне хуевого непродуманного концептуального дизайна, как раз сложность вникания это показатель. Вообще то программирование для того чтобы уменьшать сложность, а не приумножать.