2017-04-10 53 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的東西)。 祝你好運:)