summaryrefslogtreecommitdiff
path: root/sql/sql_yacc.yy
diff options
context:
space:
mode:
authorunknown <malff/marcsql@weblab.(none)>2007-01-24 14:43:09 -0700
committerunknown <malff/marcsql@weblab.(none)>2007-01-24 14:43:09 -0700
commit53491b18009d0c38644896c1bc0c5aecfc6fbf44 (patch)
tree561dff8f89d961e8ec7b9484ce861c3712c617c0 /sql/sql_yacc.yy
parent5c0216c593566377e2429a54fdab33babc0b70ab (diff)
parent39cc6d117bb7dafc0634082399e97c03a44dc1c4 (diff)
downloadmariadb-git-53491b18009d0c38644896c1bc0c5aecfc6fbf44.tar.gz
Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into weblab.(none):/home/marcsql/TREE/mysql-5.1-21029 Makefile.am: Auto merged sql/Makefile.am: Auto merged sql/sql_yacc.yy: Auto merged
Diffstat (limited to 'sql/sql_yacc.yy')
-rw-r--r--sql/sql_yacc.yy22
1 files changed, 22 insertions, 0 deletions
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 3755f6d3b67..eb8641f011f 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -54,6 +54,28 @@ const LEX_STRING null_lex_str={0,0};
YYABORT; \
}
+/*
+ Work around for broken code generated by bison 1.875.
+
+ The code generated by bison 1.875a and later, bison 2.1 and bison 2.2 is ok.
+ With bison 1.875 however, the generated code contains:
+<pre>
+ yyerrlab1:
+ #if defined (__GNUC_MINOR__) && 2093 <= (__GNUC__ * 1000 + __GNUC_MINOR__)
+ __attribute__ ((__unused__))
+ #endif
+</pre>
+ This usage of __attribute__ is illegal, so we remove it.
+ See the following references for details:
+ http://lists.gnu.org/archive/html/bug-bison/2004-02/msg00014.html
+ http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14273
+*/
+
+#if defined (__GNUC_MINOR__) && 2093 <= (__GNUC__ * 1000 + __GNUC_MINOR__)
+#undef __attribute__
+#define __attribute__(X)
+#endif
+
/* Helper for parsing "IS [NOT] truth_value" */
inline Item *is_truth_value(THD *thd, Item *A, bool v1, bool v2)
{