Commit ce8cc17
committed
Ignore bad
An objcImpl bug previously caused `@_hasStorage` to be emitted inside some extensions in module interfaces. An earlier commit in this PR created an error for this, but for backwards compatibility, it would actually be better to simply ignore the attribute in module interfaces. Modify TypeCheckStorage to emit a warning, not an error, in this situation.
Additionally, modify the module interface loader to show warnings when you verify a module interface, but not for other module interface uses (like compiling or importing one). The assumption here is that if you’re verifying a module interface, you’re either the author of the module that created it or you’re investigating a problem with it, and in either case you’d like to be told about minor defects in case they’re related.
Fixes rdar://144811653 thoroughly.@_hasStorage in module interfaces1 parent 29a2d32 commit ce8cc17
File tree
4 files changed
+20
-11
lines changed- include/swift/Frontend
- lib
- Frontend
- Sema
- test/ModuleInterface
4 files changed
+20
-11
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
672 | 672 | | |
673 | 673 | | |
674 | 674 | | |
675 | | - | |
| 675 | + | |
| 676 | + | |
676 | 677 | | |
677 | 678 | | |
678 | 679 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1654 | 1654 | | |
1655 | 1655 | | |
1656 | 1656 | | |
| 1657 | + | |
1657 | 1658 | | |
1658 | 1659 | | |
1659 | 1660 | | |
| |||
1741 | 1742 | | |
1742 | 1743 | | |
1743 | 1744 | | |
1744 | | - | |
1745 | | - | |
1746 | | - | |
| 1745 | + | |
| 1746 | + | |
| 1747 | + | |
| 1748 | + | |
| 1749 | + | |
| 1750 | + | |
1747 | 1751 | | |
1748 | 1752 | | |
1749 | 1753 | | |
| |||
1871 | 1875 | | |
1872 | 1876 | | |
1873 | 1877 | | |
1874 | | - | |
1875 | | - | |
| 1878 | + | |
| 1879 | + | |
1876 | 1880 | | |
1877 | 1881 | | |
1878 | 1882 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3748 | 3748 | | |
3749 | 3749 | | |
3750 | 3750 | | |
3751 | | - | |
3752 | | - | |
| 3751 | + | |
| 3752 | + | |
| 3753 | + | |
| 3754 | + | |
| 3755 | + | |
| 3756 | + | |
3753 | 3757 | | |
3754 | 3758 | | |
3755 | 3759 | | |
| |||
3852 | 3856 | | |
3853 | 3857 | | |
3854 | 3858 | | |
3855 | | - | |
| 3859 | + | |
| 3860 | + | |
3856 | 3861 | | |
3857 | 3862 | | |
3858 | 3863 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
4 | 3 | | |
5 | 4 | | |
6 | 5 | | |
7 | 6 | | |
8 | 7 | | |
9 | | - | |
| 8 | + | |
10 | 9 | | |
0 commit comments