2013-09-25 24 views
15

tôi đang gặp vấn đề gỡ lỗi từ giao diện điều khiển với debugger LLĐB sau khi nâng cấp lên Xcode 5. i dùng để gõ po object và nó được sử dụng để làm việc tốt, tuy nhiên bây giờ tôi nhận được lỗiXcode 5 debugger không in các đối tượng

error: instance method 'performBlock:afterDelay:' has incompatible result types in different translation units ('id' vs. 'void') 
note: instance method 'performBlock:afterDelay:' also declared here 

đây là một screenshot của ngăn xếp, mã nơi trình gỡ lỗi dừng lại tại, các giá trị trong trình gỡ lỗi hình ảnh và bảng điều khiển trình gỡ lỗi. những gì có thể là vấn đề, nó là một lỗi trong xcode 5 hoặc là có cái gì tôi có thể làm để khắc phục điều này?

+0

Trình sửa lỗi Xcode 5 hoạt động tốt cho tôi và tôi sử dụng lệnh 'p' và' po' mọi lúc ... bạn có chắc chắn rằng cấu hình chạy của bạn thực sự được đặt thành 'debug' chứ không phải' release' (mà thường dải này)? –

+1

Chỉnh sửa ở trên: ít nhất là cho Xcode của tôi, nếu bạn đặt cấu hình chạy thành 'release', nó thực sự bỏ qua các điểm ngắt ... Tôi cũng đã thử thay đổi' thế hệ mã'> 'mức tối ưu' thông qua' cài đặt xây dựng', mà cũng không tái tạo điều này ... không chắc chắn những gì bạn đã thay đổi ... vì vậy, 1 và hy vọng ai đó sáng hơn tôi có thể giúp bạn. : D –

+0

@ JRG-Developer cấu hình chạy được đặt thành 'debug'. tôi chỉ tạo một liên kết tượng trưng cho khung công tác iokit và không biên dịch ngược lại (nó đưa ra lỗi liên kết, có vẻ như apple không tạo liên kết tượng trưng đến thư mục gốc của khung công tác không giống như các thư mục gốc của khung công tác trước khi gửi xcode 5) – akaralar

Trả lời

7

Tôi đã tìm thấy cách khắc phục vấn đề này. Vấn đề là khuôn khổ nội bộ cá nhân của tôi đã được tuyên bố một phương pháp trong một thể loại trên NSObject gọi:

- (void)performBlock:(void (^)(void))block afterDelay:(NSTimeInterval)delay; 

Nhưng một khung bên thứ ba (ở đây BlocksKit) đã tuyên bố cùng một loại phương pháp:

- (id)performBlock:(void (^)(void))block afterDelay:(NSTimeInterval)delay; 

Hai người đó dường như can thiệp vào thời gian chạy của LLDB và đang tạo ra thông điệp kỳ lạ này. Để khắc phục nó, tôi chỉ thay đổi một trong những tên phương thức. Xin vui lòng cho tôi biết nếu công việc này cho bạn.

+0

điều này giải quyết nó cho tôi, bạn là người đàn ông cảm ơn! – akaralar

+0

Thật tuyệt khi được nghe như một lời chào buổi sáng! :-) – MonsieurDart

+0

Nếu có ai gặp vấn đề này và đang sử dụng dự án UIKitCategoryAdditions, nó có một danh mục trên NSObject gây ra vấn đề này. Nếu bạn đang sử dụng dự án này, tôi đề nghị sửa chữa ở trên. –

Các vấn đề liên quan