2013-07-29 23 views
6

Tôi đang tìm danh sách có sẵn __attribute__(()) chỉ thị và tôi không thể tìm thấy chúng. Tôi chỉ biết __attribute__((objc_requires_super)).Apple LLVM 4.2, danh sách có sẵn __attribute __ (()) cho Mục tiêu-C

Tôi thề tôi đã tìm kiếm và tìm kiếm và tôi không tìm thấy bất kỳ thứ gì. Có lẽ tôi đang thiếu một số thuật ngữ để bao gồm trong tìm kiếm của tôi.

Cảm ơn bạn rất nhiều.

Trả lời

4

Tôi tìm thấy thông tin bạn cần bên del trang web llvm.org Bạn có thể tìm kiếm liên kết này: http://clang.llvm.org/docs/LanguageExtensions.html#objective-c-features

+0

Cảm ơn Giuseppe, tôi đã đến thăm trang đó trước nhưng không có gì về 'objc_requires_super' là. Điều đó khiến tôi nghĩ rằng có nhiều chỉ thị hơn những chỉ thị được liệt kê ở đó. – emenegro

+0

bạn đã đọc trang này chưa? http://nshipster.com/__attribute__/ –

+0

Có, nhưng chúng tôi đang ở cùng một điểm :-( – emenegro

7

Các tài liệu đôi khi có thể bị tụt hậu. Đối với một danh sách đầy đủ, không có thêm up-to-date nơi để đi hơn so với mã nguồn!

https://github.com/llvm-mirror/clang/blob/master/include/clang/Basic/Attr.td

Dưới đây là một ví dụ:

def Visibility : InheritableAttr { 
    let Clone = 0; 
    let Spellings = [GNU<"visibility">, CXX11<"gnu", "visibility">]; 
    let Args = [EnumArgument<"Visibility", "VisibilityType", 
          ["default", "hidden", "internal", "protected"], 
          ["Default", "Hidden", "Hidden", "Protected"]>]; 
} 

Ở đây chúng ta có thể thấy nó được định nghĩa trong GNU và CXX11 GNU. Nó cũng cho thấy các đối số hợp lệ trong trường hợp này (mặc định, ẩn, nội bộ, được bảo vệ).

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