David Ungar
cf5d81c889
Merge pull request #23735 from davidungar/tracking-primary
...
[Batch mode] Cope with bugs that cause error suppression.
2019-04-05 17:45:20 -07:00
David Ungar
44daa88ebd
Format
2019-04-03 12:53:31 -07:00
David Ungar
9cc3a4a9d8
Rename defaultDiagnosticLoc to bufferIndirectlyCausingDiagnostic.
2019-04-03 12:52:49 -07:00
David Ungar
c139c5909a
Pass defaultDiagnosticLoc to handleDiagnostic, not currentPrimaryInput.
2019-04-02 22:27:55 -07:00
David Ungar
c90d9e69b6
Format
2019-04-02 00:43:59 -07:00
David Ungar
7a0e0ffc8a
Store current primary in diagnostic engine, pass it down via handleDiagnostic. Unformmated.
2019-04-02 00:43:28 -07:00
Xi Ge
f7406e6c3c
swift-api-digester: diagnose changing of the necessity of new witness table entry as ABI breakage
...
Protocol requirements may not necessarily add new entries to the witness table if
it's inherited from super protocol. This patch teaches the json dump to
include a flag indicating whether a protocol requirement requires new
witness table entry and diagnoses the change of such flag as ABI
breakages.
rdar://47657204
2019-04-01 20:29:44 -07:00
Xi Ge
49c16922dd
swift-module-digester: diagnose type witness type changes when checking ABI stability.
2018-10-25 16:40:23 -07:00
Xi Ge
70118d4db0
swift-module-digester: output ABI/API diagnostics to a path instead of stdout.
...
This is handy for scripts.
2018-10-15 19:12:34 -07:00
Xi Ge
bfadd46d57
swift-module-digester: diagnose non-final function changes in non-resilient classes.
2018-10-08 12:15:55 -07:00
Xi Ge
a1e66a0515
swift-module-digester: diagnose value ownership changes for parameters.
2018-10-04 18:02:45 -07:00
Xi Ge
78271f19a0
swift-module-digester: diagnose self access kind changes for function decls.
2018-10-04 15:57:56 -07:00
Xi Ge
c2c04875d0
swift-module-digester: diagnose operator *fix notation changes.
2018-10-02 15:04:23 -07:00
Xi Ge
8e81b59f4e
swift-module-digester: diagnose fixed-order property changes to computed property and vice versa as ABI breakage.
2018-10-01 15:54:14 -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
0afafd1ca4
swift-module-digester: diagnose let to var changes and vice versa as ABI breaking.
2018-09-27 14:25:46 -07:00
Xi Ge
c5444a8e99
swift-module-digester: diagnose optional protocol requirement changes.
2018-09-27 13:45:23 -07:00
Xi Ge
d0cd97e3e5
swift-module-digester: diagnose any decl kind changes for nominal types.
2018-09-24 14:47:19 -07:00
Xi Ge
6e3529050d
swift-module-digester: changing super classes is API breaking.
2018-09-24 13:33:26 -07:00
Xi Ge
9db65f8527
swift-module-digester: removing super classes is API breaking.
2018-09-24 12:51:20 -07:00
Xi Ge
4e3f8f4784
swift-module-digester: added protocol requirements can be source-breaking.
2018-09-23 08:48:08 -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
e8c604ff99
swift-module-digester: diagnose removing default associated type as API breakage.
2018-09-21 14:14:39 -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
f1b43ab66e
swift-module-digester: diagnose removing default argument as API breakage.
2018-09-19 17:40:00 -07:00
Xi Ge
b2a159dbf9
swift-module-digester: diagnose adding variables with fixed binary order.
...
Removing these variables should be detected as API breakages already.
2018-09-19 13:17:08 -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
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