Dear All,

I'm the author of Anyterm (http://anyterm.org), which includes an Apache module. Although I haven't yet tried to compile it for Apache 2.2 some of my users have, and they're having problems. See http://anyterm.org/forums/viewtopic.php?pid=768#p768. It looks as if the definition of AP_INIT_TAKE1 has changed at some point, and now looks like this:

# define AP_INIT_TAKE1(directive, func, mconfig, where, help) \
    { directive, { .take1=func }, mconfig, where, TAKE1, help }

That "{.take1=func}" syntax was a new one on me. A quick test suggests that it is legal in C but not in C++, and I compile my module with g++.

I can see that this definition is selected by a #if, with a regular definition without the whacky syntax also available. So, would it be OK to have this alternative more conventional declaration when __cplusplus is defined? Is there something I can do before #including the Apache headers to make it all work?

Cheers,

--Phil.


p.s. Either I'm being dense, or there isn't a Doxygenated source tree linked anywhere from the httpd web pages. apr.apache.org links to one for apr only. Did there used to be, or am I imagining it?



Reply via email to