2013-11-20 213 views
1
標籤上GDB

我可以在標籤上GDB打破 「gdbStatement:」 在這個例子代碼:突破在的ObjectiveC

...

 op1 = op2 = op3 = op4 = nil; 
     op1 = [ops firstObject]; 
     if(jj>1)op2 = [ops oai:1]; 
     if(jj>2)op3 = [ops oai:2]; 
     if(jj>3)op4 = [ops oai:3]; 

gdbStatement: 
// Wertzuweisungen 
     if([stmt isZuweisung]){ 
// ausser bei mutable Targets, die erweitert werden oder im Fehlerfall hier drin kein continue, weil am Ende s1 weiterverarbeitet wird; 
      NSString *val1,*s1; 
      double varVal=0; 

...

我知道如何打破線路號碼和功能。但無法找到如何打破標籤。

+0

你試過把它拖到下一個語句嗎? –

+0

@AnoopVaidya從他的問題,我會假設他沒有使用Xcode或其他圖形調試器前端。 – mah

+0

@mah:然後我不知道誰通過控制檯使用斷點... !!! –

回答

0

FSF或蘋果gdb?以下適用於FSF gdb。

假定該代碼是在一個方法中,存在似乎沒有辦法來指定的方法中的標籤上的斷點,

的語法的標籤上指定一個斷點是斷點功能:標籤 但Objective-C linepec解析器在FSF gdb中沒有解析這個,所以break - [aClass aMethod]:aLabel不起作用

可以合理地假設你可以改變方法在符號名稱上指定函數斷點,比如'break _i_aClass__aMethod:label',但是由於我還不理解的原因,這個功能目前不起作用。

嘗試使用gdb 7.3和7.6。

+0

GNU gdb(GDB)7.0.1-debian –