NSAutoreleasePool is unavailable

Viewed 40305

I am following "Programming in Objective-C" 3rd edition and I am having problems with the first example.

I keep getting this error:

Semantic Issue: 'NSAutoreleasePool' is unavailable: not available in automatic reference counting mode

Here is my code:

//
// main.m
// prog1 //
// Created by Steve Kochan on 1/30/11.
// Copyright 2011 ClassroomM, Inc.. All rights reserved. //

#import <Foundation/Foundation.h>
int main (int argc, const char * argv[]) {
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    NSLog (@"Programming is fun!");
    [pool drain];
    return 0;
}

Any insight will be greatly appreciated.

5 Answers

Quick post just in case you still looking

You can disable ARC in build settings.

  • Click on you project, in the left hand organizer.
  • Select your target, in the next column over.
  • Select the Build Settings tab at the top.
  • Scroll down to "Objective-C Automatic Reference Counting" (it may be listed as "CLANG_ENABLE_OBJC_ARC" under the User-Defined settings group), (if you do not find ARC option under build settings, you might need to toggle you compiler. You can find it under build settings)
  • and set it to NO.
Related