I've had a bit of a look in to this. Line 165 in the version I have out of
svn is the line after the one James mentioned:
From line 162 onwards:
#if MYSQL_VERSION_ID >= 40101
if (option_pending(opt_multi_statements, true)) {
client_flag |= CLIENT_MULTI_STATEMENTS;
}
#endif
In version 4.1 of MySQL, CLIENT_MULTI_STATEMENTS is defined as 65536 in
mysql_com.h. However several of the types in mysql_com.h were defined as
ulong, and you get James' error if you use these types in connection.cpp.
As James is using MySQL 5, I suspect that the type of
CLIENT_MULTI_STATEMENTS has changed to be something like ((ulong)65536).
It looks like ulong is defined in my_global.h, and according to the MySQL
docs http://dev.mysql.com/doc/refman/4.1/en/windows-client-compiling.html
you need to include my_global.h before mysql.h on Windows. Unfortunately,
if you do that you get a lot of errors about types etc already being
defined. That's about as far as I've got with the issue...
> -----Original Message-----
> From: Warren Young [mailto:mysqlpp@stripped]
> Sent: 19 December 2006 04:19
> To: MySQL++ Mailing List
> Subject: Re: error C2065: 'ulong' : undeclared identifier
>
> james pruett wrote:
> > 1>.\connection.cpp(165) : error C2065: 'ulong' : undeclared
> identifier
>
> I don't know how you managed to get that error. The text "ulong"
> doesn't appear in connection.cpp or in connection.h. Line 165 is a
> call
> to Lockable::lock(), which also has no "ulong" in it.
>
> Are you certain that you are compiling what you think you are
> compiling?
>
> --
> MySQL++ Mailing List
> For list archives: http://lists.mysql.com/plusplus
> To unsubscribe: http://lists.mysql.com/plusplus?unsub=1
> telecoms.com