Commit Graph

28 Commits

Author SHA1 Message Date
Xi Ge
9fcc59bcaf swift-module-digester: include operator declarations in the module dump.
Their changes should have no impact on ABI, but can be source-breaking.
2018-10-01 12:28:54 -07:00
Xi Ge
6a198b151a swift-module-digester: keep track of whether a decl is internal. 2018-09-30 18:53:35 -07:00
Xi Ge
226811007b swift-module-digester: refactor diagnostics logic. NFC 2018-09-29 20:18:29 -07:00
Xi Ge
b9c1cdefed swift-module-digester: keep track of whether a property or subscript has storage. 2018-09-28 11:36:36 -07:00
Xi Ge
459538f49a swift-module-digester: slight performance enhancement to re-use node comparison results. NFC 2018-09-28 11:05:57 -07:00
Xi Ge
7b45ae9135 swift-module-digester: diagnose adding/removing @escaping as ABI breakage. 2018-09-27 17:43:02 -07:00
Xi Ge
6665b56e9d swift-module-digester: changing open class members to public can be source-breaking. 2018-09-27 14:38:59 -07:00
Xi Ge
c5444a8e99 swift-module-digester: diagnose optional protocol requirement changes. 2018-09-27 13:45:23 -07:00
Xi Ge
3dfe615d27 swift-module-digester: keep track of whether a class member is open. 2018-09-27 13:18:11 -07:00
Xi Ge
aa1ae1607a swift-module-digester: keep track of whether a VarDecl is let. 2018-09-27 12:52:58 -07:00
Xi Ge
de05cbc350 swift-module-digester: more refactoring to exclude empty values in the dump. 2018-09-27 11:34:56 -07:00
Xi Ge
aaffbd1ca5 swift-module-digester: some refactoring on node serialization. NFC 2018-09-26 15:17:25 -07:00
Xi Ge
d26883a8ca swift-module-digester: remove some boiler-template code for node serialization. NFC 2018-09-25 17:29:33 -07:00
Xi Ge
c0556cc4dd swift-module-digester: keep track of whether a decl overrides in the dump. 2018-09-25 11:04:55 -07:00
Xi Ge
0d9f92b1a7 swift-module-digester: include the entire class inheritance chain in module dump. 2018-09-24 16:56:10 -07:00
Xi Ge
2909c222dc swift-module-digester: keep track of super class names in the module dump 2018-09-24 12:33:33 -07:00
Xi Ge
721182dd87 swift-module-digester: refactor all node creation functions into SwiftDeclCollector. NFC 2018-09-24 12:18:12 -07:00
Xi Ge
a64ae05454 swift-module-digester: keep track of whether a protocol member is a requirement. 2018-09-23 08:25:07 -07:00
Xi Ge
f72620c3b7 swift-module-digester: removing setter from a property is API breaking. 2018-09-21 18:25:12 -07:00
Xi Ge
01afc3395e swift-module-digester: include SubscriptDecl in the Json dump.
We model SubscriptDecl as an abstract function decl with a flag indicating
whether setter is defined.
2018-09-21 17:00:52 -07:00
Xi Ge
6500e321aa swift-module-digester: include AssociatedTypeDecl in module digests. 2018-09-21 14:04:21 -07:00
Xi Ge
6cc5855bcf swift-module-digester: when we have multiple extensions to a single external type, we should synthesize only one type decl node. 2018-09-20 16:13:40 -07:00
Xi Ge
08c8cf14e5 swift-module-digester: diagnose adding/removing protocol conformances as API breakages. 2018-09-20 15:24:19 -07:00
Xi Ge
05e15927a3 swift-module-digester: diagnose reordering of members in a fixed layout type under ABI mode. 2018-09-19 09:36:09 -07:00
Xi Ge
0eb756f2f4 swift-module-digester: serialize whether a declaration is implicit. 2018-09-18 12:59:16 -07:00
Xi Ge
47228bc17b swift-module-digester: remove unnecessary node annotations. NFC (#18975) 2018-08-24 21:44:40 -07:00
Xi Ge
e4388af6be swift-module-digester: refactor the ABI/API diagnostics to use DiagnosticEngine. NFC (#18957)
Before this patch, we used to define tooling-specific diagnostics. With adding more
checking logics, we found this mechanism hard to extend. This patch
eliminates the home-made diagnostics model to use the one from compiler, which provides
several benefits: less boiler-templates, better integration with DiagnosticConsumer,
and easy ordering of detected issues.
2018-08-24 13:11:32 -07:00
Xi Ge
1b601f83fe swift-module-differ: refactor node definition to a separate file. NFC
The original implementation file contains both nodes definition and detection
logics. This patch splits the two parts.
2018-08-20 13:16:57 -07:00