blob: 725feba3385cfd27a01b0fd3d25ad166e042d7d9 [file]
// TARGET_BACKEND: NATIVE
// DISABLE_NATIVE: isAppleTarget=false
// MODULE: objclib
// FILE: objclib.def
language = Objective-C
headers = objclib.h
headerFilter = objclib.h
// FILE: objclib.h
#import <Foundation/Foundation.h>
@protocol Legacy
- (int)legacyApi;
@end
@interface Widget : NSObject <Legacy>
- (int)legacyApi __attribute__((unavailable));
@end
// FILE: objclib.m
#import "objclib.h"
@implementation Widget
- (int)legacyApi { return 42; }
@end
// MODULE: main(objclib)
// FILE: main.kt
@file:OptIn(kotlinx.cinterop.ExperimentalForeignApi::class)
import objclib.Widget
@Suppress("DEPRECATION", "DEPRECATION_ERROR")
fun box(): String {
val result = Widget().legacyApi()
return if (result == 42) "OK" else "FAIL: legacyApi=$result"
}