Fork channel

Create a new channel as a copy of main.

Rename channel

Rename main to:

Delete channel

Delete main? This cannot be undone.

implementation-in-extern-c.mm
// RUN: %clang_cc1 -emit-llvm %s -o /dev/null
// rdar://12581683

extern "C" {
@interface RetainBucket 
+ (id) sharedRetainBucket;
@end

@implementation RetainBucket
+ (id) sharedRetainBucket
{
    static id sharedBucket = (id)0;
    return sharedBucket;
}
@end
}