On Apr 25, 2008, at 3:20 PM, Bojan Smojver wrote:
On Sat, 2008-04-26 at 08:07 +1000, Bojan Smojver wrote:

I'm not sure that is portable C.  Is the compiler guaranteed to
optimize that
into a constant?

I would think so. BUFSIZ is defined as constant, as well as
APR_FILE_DEFAULT_SIZE. But, I'll check again...

The book says that such expressions _may_ be evaluated during
compilation. So, I guess it is not guaranteed (I would think any modern
compiler would do it, though).

If you wish, I can have the classic #if (the one I did in header files
before) in copy.c. That should make it clear.

I just checked by K&R 1st edition and it allows constants
"possibly connected" by the ternary operator.  So, unless we find a
specific compiler that doesn't accept it, I think we can leave it as is.

....Roy

Reply via email to