diff options
author | Konstantin Osipov <kostja@sun.com> | 2009-12-03 00:24:10 +0300 |
---|---|---|
committer | Konstantin Osipov <kostja@sun.com> | 2009-12-03 00:24:10 +0300 |
commit | e91294243f9905356a31d1a9944b2bea9cbfe859 (patch) | |
tree | a01fd3fc8d2b32d544216a890dd85e0ba0e05845 | |
parent | 9148af5cdbd6baacc7721c8e6fd40465e9cdce1e (diff) | |
download | mariadb-git-e91294243f9905356a31d1a9944b2bea9cbfe859.tar.gz |
Backport of:
------------------------------------------------------------
revno: 2630.4.37
committer: Dmitry Lenev <dlenev@mysql.com>
branch nick: mysql-6.0-3726-w2
timestamp: Wed 2008-06-25 20:28:57 +0400
message:
Fix build failure of mysql-6.0-3726 tree on Windows.
The failure was caused by the fact that sql/mdl.cc was
using __func__ macro without including sql_profile.h
header which contained definition of this macro for
those platforms that miss it.
This patch solves this problem by moving this define to
include/my_global.h which makes it available in modules
which don't/can't include sql/mysql_priv.h.
This is a patch that is part of WL#3726.
include/my_global.h:
Moved definition of __func__ macro from sql/sql_profile.h to
include/my_global.h to make it accessible from those modules
of the server which don't include mysql_priv.h.
sql/sql_profile.cc:
Removed _unknown_func_ const variable since it is no longer used
by __func__ macro.
sql/sql_profile.h:
Moved definition of __func__ macro from sql/sql_profile.h to
include/my_global.h to make it accessible from those modules
of the server which don't include mysql_priv.h.
-rw-r--r-- | include/my_global.h | 19 | ||||
-rw-r--r-- | sql/sql_profile.cc | 3 | ||||
-rw-r--r-- | sql/sql_profile.h | 8 |
3 files changed, 19 insertions, 11 deletions
diff --git a/include/my_global.h b/include/my_global.h index 815be622b16..0f2aea62438 100644 --- a/include/my_global.h +++ b/include/my_global.h @@ -1574,6 +1574,25 @@ inline void operator delete[](void*, void*) { /* Do nothing */ } #define bool In_C_you_should_use_my_bool_instead() #endif +/* Provide __func__ macro definition for platforms that miss it. */ +#if __STDC_VERSION__ < 199901L +# if __GNUC__ >= 2 +# define __func__ __FUNCTION__ +# else +# define __func__ "<unknown>" +# endif +#elif defined(_MSC_VER) +# if _MSC_VER < 1300 +# define __func__ "<unknown>" +# else +# define __func__ __FUNCTION__ +# endif +#elif defined(__BORLANDC__) +# define __func__ __FUNC__ +#else +# define __func__ "<unknown>" +#endif + #ifndef HAVE_RINT /** All integers up to this number can be represented exactly as double precision diff --git a/sql/sql_profile.cc b/sql/sql_profile.cc index 69e5bc3cbb4..0f67c865d45 100644 --- a/sql/sql_profile.cc +++ b/sql/sql_profile.cc @@ -38,9 +38,6 @@ #define MAX_QUERY_LENGTH 300 -/* Reserved for systems that can't record the function name in source. */ -const char * const _unknown_func_ = "<unknown>"; - /** Connects Information_Schema and Profiling. */ diff --git a/sql/sql_profile.h b/sql/sql_profile.h index bffe1cb576b..e9c5686efab 100644 --- a/sql/sql_profile.h +++ b/sql/sql_profile.h @@ -16,14 +16,6 @@ #ifndef _SQL_PROFILE_H #define _SQL_PROFILE_H -#ifndef __func__ -#ifdef __FUNCTION__ -#define __func__ __FUNCTION__ -#else -#define __func__ "unknown function" -#endif -#endif - extern ST_FIELD_INFO query_profile_statistics_info[]; int fill_query_profile_statistics_info(THD *thd, TABLE_LIST *tables, Item *cond); int make_profile_table_for_show(THD *thd, ST_SCHEMA_TABLE *schema_table); |