-------- Forwarded Message --------
From:
To: Andrew Makhorin <address@hidden>
Cc: address@hidden
Subject: Re: src/glplib.h:28:17: error: conflicting types for
'_glp_lib_str2int' with gplk-4.52.1 and mariadb-5.5.32
Date: Tue, 04 Feb 2014 21:39:24 +0100
Hello again!
Am Dienstag, 4. Februar 2014, 18:02:21 schrieb Andrew Makhorin:
The error occurs on compilation of glpsql.c because str2int is declared
in both glplib.h and in m_string.h, where the latter is included via
mysql.h. (I'd like to note that mysql.h is a public api header, so it
should keep the namespace clean, but it does not, having declared many
non-reserved non-prefixed identifiers in secondary headers.)
This is the reply by a MariaDB developer:
Sergei Golubchik commented on MDEV-5613:
----------------------------------------
This happens, because {{my_sys.h}} includes {{my_valgrind.h}}, which
includes {{m_string.h}}.
Actually, an application isn't supposed to include {{my_sys.h}}, but
{{m_string.h}} is particularly bad (or, should I say good? :)) in polluting
namespaces, so it's better to avoid it.
I suppose we can easily fix this by not including {{m_string.h}} in
{{my_valgrdind.h}}
So apparently gplsql.h should not include my_sys.h before including mysql.h.
--Dennis