Kavon Farvardin
f0f91eedc9
NCGenerics: avoid feature-guarding in some cases
...
With the generalization of Optional to support noncopyable types, our
feature-guarding in swiftinterface files would double-print functions
that simply refer to the Optional type.
Since NoncopyableGenerics is a suppressible feature, by default
a second version of Optional and UnsafePointer are emitted into
swiftinterface files, where the ~Copyable generalization is stripped
away.
We can rely on that to avoid double-printing the function, if the types
substituted for the generic parameters are all Copyable.
We need a bit more checking for when
`@_disallowFeatureSuppression(NoncopyableGenerics)` is used, since this
trick relies on there always being a definition of the type we refer to,
whether the feature is enabled or not.
resolves rdar://127389991
2024-05-08 15:48:54 -07:00
..
2024-05-08 15:48:54 -07:00
2024-02-19 02:48:36 -10:00
2023-11-28 13:16:32 -08:00
2024-03-18 12:32:33 -07:00
2024-04-19 12:19:29 -07:00
2024-04-10 09:38:02 -07:00
2023-08-16 20:57:50 -07:00
2023-05-03 14:33:19 -07:00
2024-02-28 08:37:44 -08:00
2024-02-29 10:09:08 -08:00
2024-03-11 14:28:20 -07:00
2024-02-29 11:49:26 -08:00
2023-05-30 13:33:26 -07:00
2023-05-30 13:33:26 -07:00
2023-05-08 13:56:52 -07:00
2024-04-25 11:44:15 -07:00
2023-10-28 14:38:11 -07:00
2023-07-12 13:53:36 -07:00
2024-04-05 07:52:14 -07:00
2024-04-05 07:52:14 -07:00
2023-08-09 14:24:11 -07:00
2024-02-20 07:27:39 -08:00
2023-09-21 00:55:17 -07:00
2024-04-19 11:34:01 -07:00
2023-12-13 10:53:42 +09:00
2024-04-10 09:38:02 -07:00
2023-09-19 10:38:42 -07:00
2024-02-14 21:53:54 -08:00
2023-09-15 13:16:46 -07:00
2023-06-20 13:15:09 -07:00
2023-04-07 21:23:27 -07:00
2024-03-28 14:48:15 -07:00
2023-10-02 10:42:00 -07:00
2023-10-16 22:05:26 -07:00
2024-04-05 07:52:14 -07:00
2024-01-11 13:54:24 -08:00
2023-05-10 18:19:49 -07:00
2024-05-08 15:48:54 -07:00
2023-10-25 14:57:22 -06:00
2023-06-12 16:53:48 -07:00
2024-03-01 12:05:51 -08:00
2024-04-19 12:19:29 -07:00
2023-09-18 10:54:35 -07:00
2024-04-05 07:52:14 -07:00
2024-01-03 19:36:16 -08:00
2024-04-15 16:46:22 -07:00
2024-02-06 08:15:26 -08:00
2024-03-27 22:20:50 -07:00
2023-03-28 22:43:45 -07:00
2023-11-03 09:37:24 -07:00
2023-10-31 16:48:04 -07:00
2024-04-22 11:13:40 -07:00
2024-03-12 01:39:50 -07:00
2024-02-19 02:48:36 -10:00
2023-12-10 10:10:15 -08:00
2024-04-22 13:08:20 -07:00
2023-05-30 09:54:31 +01:00
2023-10-19 11:46:08 -07:00
2023-12-08 22:33:12 -08:00
2024-05-08 15:48:54 -07:00
2024-04-30 12:03:46 -07:00
2024-04-09 13:32:03 -07:00
2023-08-16 20:57:50 -07:00
2023-08-16 20:57:50 -07:00
2023-07-12 12:34:37 -04:00
2023-12-06 14:27:33 -08:00
2024-02-21 16:28:19 -08:00
2024-04-14 21:28:13 -07:00
2024-02-27 10:26:31 -08:00
2024-01-03 15:33:33 -08:00
2023-06-20 13:15:09 -07:00
2024-03-05 13:24:31 -08:00
2024-03-07 17:30:17 -05:00
2023-08-28 08:28:56 -07:00
2024-03-18 12:32:33 -07:00
2024-03-26 17:27:57 -07:00
2023-03-29 14:45:22 -07:00
2023-10-03 13:24:39 -07:00
2023-11-01 15:55:19 -07:00
2024-01-04 10:39:39 -08:00
2023-10-16 22:05:26 -07:00
2024-02-21 17:59:49 -08:00
2024-02-19 02:48:36 -10:00
2024-02-19 17:47:16 -08:00
2024-02-08 14:29:05 -07:00