@availability: implement serialization and AST printing

Swift SVN r16010
This commit is contained in:
Dmitri Hrybenko
2014-04-07 14:07:28 +00:00
parent 9a15e6bddd
commit 4315fdbbf8
5 changed files with 61 additions and 14 deletions

View File

@@ -467,7 +467,7 @@ public:
: DeclAttribute(DAK_asmname, AtLoc, Range, Implicit),
Name(Name) {}
AsmnameAttr(StringRef Name)
AsmnameAttr(StringRef Name, bool Implicit)
: AsmnameAttr(Name, SourceLoc(), SourceRange(), /*Implicit=*/true) {}
/// The symbol name.

View File

@@ -964,11 +964,22 @@ namespace decls_block {
using AsmnameDeclAttrLayout = BCRecordLayout<
Asmname_DECL_ATTR,
BCBlob // asmname
BCFixed<1>, // implicit flag
BCBlob // asmname
>;
using AvailabilityDeclAttrLayout = BCRecordLayout<
Availability_DECL_ATTR,
BCFixed<1>, // implicit flag
BCFixed<1>, // is unconditionally unavailable?
BCVBR<5>, // number of bytes in platform string
BCVBR<5>, // number of bytes in message string
BCBlob // platform, followed by message
>;
using ObjCDeclAttrLayout = BCRecordLayout<
ObjC_DECL_ATTR,
BCFixed<1>, // implicit flag
ObjCDeclAttrKindField, // kind
BCArray<IdentifierIDField>
>;