2017-04-10 55 views
1

here是一个C++(克利翁)项目的链接。我尽可能多地提炼/简化了这个问题。LLDB 3.9.0崩溃(克利翁)

的问题是,在调试时,LLDB(3.9.0版本)崩溃。

步骤来重现崩溃:

  1. 开放项目与克利翁2017.1(使用内置LLDB调试)
  2. 编译项目的main.cpp线
  3. 将断点14
  4. 在调试模式下运行。
  5. 一旦你在第14行的断点,然后输出变量“an_integer”通过“打印an_integer”命令。
  6. 崩溃

的错误/崩溃报告:

断言失败:(D-> getCachedLinkage()== LV.getLinkage()),功能 getLVForDecl,文件 /应用/ buildAgent /工作/ 92515a49514b3993/LLDB/LLVM /工具/铛/ lib目录/ AST/Decl.cpp, 线1360

注意,兼容Mac v10.12.4 LLDB v3.9.0出现这种崩溃。但在Mac 10.12.4上,LLDB 3.7.0不会发生这种情况。

最终,我想知道我是否在我的项目代码中做了一些愚蠢的事情?如果没有,这是CLION还是LLDB的错误?有什么地方我应该发布这个帮助得到错误(如果是的话)解决?

+0

我观察了撞车,步入重元编程模板时。在我的情况下提升元状态机。如果我只是跳过进入MSM,一切都可以找到。 – ovanes

+0

嘿!最终找到解决办法? – Fashizel

回答

0

这并不像你的错误。由于某些原因,lldb无法摄取编译器生成的类型信息。

我没有克利翁,所以我不能尝试,但如果我只是建立你的测试项目,无论是与一个PCH或不使用铛在Xcode 8.3我没有看到这个崩溃。做最好的办法是建立这个项目克利翁,然后做出的dSYM(如果克利翁不为你做到这一点。)你做的运行方式:

> dsymutil TestingLLDBBreaking 

检查是否可以重现崩溃与dSYM,如果是的话,用http://bugreporter.apple.com与可执行文件和.dSYM文件错误。

+0

dsymutil不会产生错误。此外,如果在使用CLion编译后使用lldb-370.0.40(通过命令行),我也不会出错。我相信这与CLION结合lldb 3.9.0有关。我会在他们的问题跟踪器上发布帖子(https://youtrack.jetbrains.com/issues/CPP) – Xandrix

1

所以我有一段时间同样的问题。 就在格式化我的Mac之前,我已经将项目重新克隆到不同的目录并从那里运行。没有问题。 (我确定它是一个mac-os的东西)。 祝你好运:)