• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: A simple preprocessor question
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: A simple preprocessor question


  • Subject: Re: A simple preprocessor question
  • From: David A Rowland <email@hidden>
  • Date: Tue, 20 Mar 2007 10:58:51 -0700

At 1:17 PM -0400 3/20/07, Shamyl Zakariya wrote:
I have a framework ( wrapping some base opengl functionality ) which defines a macro which (in a debug build) queries for OpenGL errors, and in a release build does nothing -- since querying for GL errors is runtime expensive.

The macro looks like this:

#if DEBUG
#define glError() { \
GLenum err = glGetError(); \
while (err != GL_NO_ERROR) { \
printf("glError: %s caught at %s:%u\n", (char *)gluErrorString(err), __FILE__, __LINE__); \
err = glGetError(); \
} \
}
#else
#define glError() ;
#endif


As far as I can tell, this used to work. In debug builds, the macro expanded and would query for runtime errors. And in release builds, it went away and my code ran quickly, like it should.

Now, at some recent point ( I can't say exactly when ) it began to follow the #else path in both debug and release builds. I assume I'm using the wrong preprocessor directive... so can anybody tell me how better to bracket this?



The "assert" macro which is in the C library, depends on the definition of "NDEBUG". Is it possible that this one does too, and the initial "N" was accidentally dropped?
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden
References: 
 >A simple preprocessor question (From: Shamyl Zakariya <email@hidden>)

  • Prev by Date: Re: executable iostream in terminal when double-clicking app icon
  • Next by Date: Re: A simple preprocessor question
  • Previous by thread: Re: A simple preprocessor question
  • Next by thread: Re: A simple preprocessor question
  • Index(es):
    • Date
    • Thread