Bug #2835 preprocessor errors with non-gcc compilators
Submitted: 17 Feb 2004 0:03 Modified: 23 Feb 2004 3:46
Reporter: [ name withheld ] Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:3.23.58, 4.0.18 OS:Other (tru64unix, irix)
Assigned to: Marko Mäkelä CPU Architecture:Any

[17 Feb 2004 0:03] [ name withheld ]
Description:
Using native compilators on tru64unix 5.1a and irix 6.5.22 there are problems with indentation of preprocessor directives #ifdef, #else #elif and #endif. In some source files these directives are not beginning on the first column but are tabbed to another columns. This produces errors. The problem was already in previous versions of mysql, but I hadn|t the idea how to report bugs to mysql before.

At least the following files are affected:
./innobase/include/mem0mem.ic
./innobase/include/sync0rw.ic
./innobase/include/sync0sync.ic
./innobase/mem/mem0mem.c
./innobase/mem/mem0dbg.c
./innobase/sync/sync0rw.c
./innobase/sync/sync0sync.c

Not all preprocessor directives are affected in these files, but many of them.

How to repeat:
CC=cc ./configure ....
make

Suggested fix:
Please, remove the tab characters before '#' sign of the directives so the directives would begin in the first column.
[18 Feb 2004 7:32] Alexander Keremidarski
Assigned to Lenz for consideration
[18 Feb 2004 7:45] Lenz Grimmer
Thanks. Heikki, these are all InnoDB files - can you please take a look 
at these and fix them, if appropriate? Thank you.
[23 Feb 2004 2:06] Heikki Tuuri
Hi!

Marko Mäkelä of Innobase Oy is fixing the problematic indentation in preprocessor macros.

Regards,

Heikki
[23 Feb 2004 3:46] Marko Mäkelä
Thank you for your bug report. This issue has been committed to our
source repository of that product and will be incorporated into the
next release.

If necessary, you can access the source repository and build the latest
available version, including the bugfix, yourself. More information 
about accessing the source trees is available at
    http://www.mysql.com/doc/en/Installing_source_tree.html

Additional info:

I fixed these errors in the 4.0 tree.