dmd/compiler/test/runnable/objc_call.d
Mathias LANG eca46c71ad
dmd: Deprecate 'in' parameters on non-extern(D,C++) functions (#14951)
This error was introduced in `-preview=in` in v2.101.0.
In order to make `-preview=in` the default, we add a deprecation
even if `-preview=in` is not used.
2023-03-08 10:57:41 +02:00

28 lines
607 B
D

// EXTRA_OBJC_SOURCES:
// REQUIRED_ARGS: -L-framework -LFoundation
import core.attribute : selector;
extern (Objective-C)
extern class Class
{
NSObject alloc() @selector("alloc");
}
extern (Objective-C)
extern class NSObject
{
NSObject initWithUTF8String(scope const char* str) @selector("initWithUTF8String:");
void release() @selector("release");
}
extern (C) void NSLog(NSObject, ...);
extern (C) Class objc_lookUpClass(scope const char* name);
void main()
{
auto c = objc_lookUpClass("NSString");
auto o = c.alloc().initWithUTF8String("hello");
NSLog(o);
o.release();
}