2d30fe48d4
__ANDROID_API__ guards are removed in favor of __INTRODUCED_IN macros. Currently, __INTRODUCED_IN macro does nothing for these headers (it's meaningful only to the headers processed by versioner which are limited to binic headers). The plan is to make the macros to tag the declaration with the availability attribute. Then, when the min_sdk_version of a caller is set to an API level that is older than the API level of the APIs, the compiler will provide them as weak symbols and enforce that calling the APIs are guarded with a runtime check. For now, these guards are preventing from making a build system change to let __ANDROID_API__ track the min_sdk_version property instead of the sdk_version property. With the build system change, __ANDROID_API__ will suddenly drop for the native modules where min_sdk_version < sdk_version, which is the case when the modules are included in APEXes. As a result, some new APIs will be unavailable at build-time. Dropping the hand-written guards fixes the problem. Bug: 163288375 Test: m Change-Id: If1cc6b9af410f536abe6d777c22711209fa76530 |
||
---|---|---|
.. | ||
android | ||
ndk | ||
sync |