宏很难调试,您正在经历这种情况。这是因为它们在编译开始之前(由预处理器)被扩展,所以当clang / gcc / icc /任何其他编译器看到您的代码并生成调试信息(包括行表)时,宏已经消失了。问题不是LLDB特有的,而是C / C ++ / ObjC编译模型的本质问题,其中有一个预处理器和一个单独的编译器,只有后者会对调试信息生成做出贡献,而只有前者能看到宏。