You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Sema] Report importing modules built from a swiftinterface without resilience
Generating a swiftinterface for a module without library-evolution is
not currently a recommended configuration, and it leads to a warning at
building the module. We’re now considering generating more
swiftinterface even without library evolution as the swiftinterface can
be useful for documentation tools. However, while we can build against
such a swiftinterface we shouldn’t expect the executable to work
reliably.
This PR adds the infrastructure necessary to detect when we’re importing
a module from a swiftinterface without it having enabled
library-evoluation. It is reported as an error which can be downgraded
to a warning with an env var. Compiler engineers may still want a full
build even if the binary is unusable.
rdar://101637436
import NonResilientLib // expected-error {{module 'NonResilientLib' was rebuilt from its swiftinterface but not compiled with library evolution support; execution will be unreliable}}
48
+
import ResilientLib
49
+
50
+
NonResilientFunc()
51
+
ResilientFunc()
52
+
53
+
//--- ClientWarning.swift
54
+
55
+
import NonResilientLib // expected-warning {{module 'NonResilientLib' was rebuilt from its swiftinterface but not compiled with library evolution support; execution will be unreliable}}
0 commit comments