我在项目中有一个源文件,其中有超过65,536行代码(确切地说是112,444行)。我正在使用一个“sqlite合并”,它是一个单独的巨大源文件。
我正在使用MSVC 2005进行调试时会遇到问题。一切都可以编译和链接。但是当我尝试进入一个函数并使用调试器时,它将显示错误的代码行号。
有趣的是,正确行号和调试器显示的行号之间的差异恰好是65536。这让我怀疑(几乎可以确定)是一些无符号短整型溢出。
我还怀疑这不是MSVC本身的错误。也许是调试信息格式的限制。也就是说,MSVC使用的调试信息格式将行号存储为2字节shorts。
是否有任何方法可以解决这个问题(除了将大型文件分割成几个较小的文件)?
我正在使用MSVC 2005进行调试时会遇到问题。一切都可以编译和链接。但是当我尝试进入一个函数并使用调试器时,它将显示错误的代码行号。
有趣的是,正确行号和调试器显示的行号之间的差异恰好是65536。这让我怀疑(几乎可以确定)是一些无符号短整型溢出。
我还怀疑这不是MSVC本身的错误。也许是调试信息格式的限制。也就是说,MSVC使用的调试信息格式将行号存储为2字节shorts。
是否有任何方法可以解决这个问题(除了将大型文件分割成几个较小的文件)?