On Jan 28, 2010, at 1:57 AM, Joel Fielder wrote:
>> Hmm, okay, that complicates things a bit if I can't rely on a machine's package
> management system to have installed mysql++ properly.
I'd say it *is* proper for MySQL++ to be installed with its sane defaults. :)
It wouldn't be hard to regenerate these headers from the Perl scripts after installing the
package. Or, install from source, or build your own package.
>> Any possibility then of doing what Boost does and use #ifdefs to hide the extra
> definitions, so you can just #define something before including the header to get the
> number of parameters you need?
Possible, but that would mean seeking out and installing those old compilers to test that
the #ifdef fix does in fact prevent the compiler breakage. There are at least two I know
of, and neither is particularly easy for me to dig up.
Besides which, it's not unreasonable that some compilers choke on ssqls.h files that
define many more fields. The size of ssqls.h goes up superlinearly as a function of the
number of fields you ask it to generate. (The curve appears exponential, but my curve
fitting program is being balky so I can't be sure.) At 100 fields -- quadruple the
default -- ssqls.h is about 12 times larger!
While it's nice to have a compiler that can digest 13 MB of macros in a single gulp, I
can't summon up much scorn for one that can't.
> I reckon the answer will be "show me a proper reason you need more than 25 fields in
> a table" combined with "wait for SSQLS v2" and "but if you give us a working patch"...
> etc. Otherwise, vertical partition is your new bestest friend!
All good answers! :)