summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <greg@mysql.com>2004-02-19 00:57:43 -0100
committerunknown <greg@mysql.com>2004-02-19 00:57:43 -0100
commit1e34d44b2bdf130909581946e02b307828b18ead (patch)
tree082ebbd3559f0ecdfbbbc90708ed4ac2c95ed489
parent70e56f4d9383b53a51949fe06518e12aaa2f0692 (diff)
parent9c69768e3fecc41f8f0f973fe59ee9cd7e4f7d04 (diff)
downloadmariadb-git-1e34d44b2bdf130909581946e02b307828b18ead.tar.gz
Merge gweir@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/bk/mysql-4.0
-rw-r--r--configure.in9
-rw-r--r--mysql-test/r/func_test.result3
-rw-r--r--mysql-test/t/func_test.test1
-rw-r--r--sql/sql_yacc.yy3
4 files changed, 14 insertions, 2 deletions
diff --git a/configure.in b/configure.in
index fdb6db9f6c2..c05329a1680 100644
--- a/configure.in
+++ b/configure.in
@@ -1028,6 +1028,15 @@ case $SYSTEM_TYPE in
MAX_C_OPTIMIZE="-O"
fi
;;
+ *darwin7*)
+ if test "$ac_cv_prog_gcc" = "yes"
+ then
+ FLAGS="-DHAVE_DARWIN_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DFN_NO_CASE_SENCE"
+ CFLAGS="$CFLAGS $FLAGS"
+ CXXFLAGS="$CXXFLAGS $FLAGS"
+ MAX_C_OPTIMIZE="-O"
+ fi
+ ;;
*freebsd*)
echo "Adding fix for interrupted reads"
OSVERSION=`sysctl -a | grep osreldate | awk '{ print $2 }'`
diff --git a/mysql-test/r/func_test.result b/mysql-test/r/func_test.result
index e11eaa0d246..aaf5039eb43 100644
--- a/mysql-test/r/func_test.result
+++ b/mysql-test/r/func_test.result
@@ -46,6 +46,9 @@ select 3 ^ 11, 1 ^ 1, 1 ^ 0, 1 ^ NULL, NULL ^ 1;
select 1 XOR 1, 1 XOR 0, 0 XOR 1, 0 XOR 0, NULL XOR 1, 1 XOR NULL, 0 XOR NULL;
1 XOR 1 1 XOR 0 0 XOR 1 0 XOR 0 NULL XOR 1 1 XOR NULL 0 XOR NULL
0 1 1 0 NULL NULL NULL
+select 1 like 2 xor 2 like 1;
+1 like 2 xor 2 like 1
+0
create table t1 (a int);
insert t1 values (1);
select * from t1 where 1 xor 1;
diff --git a/mysql-test/t/func_test.test b/mysql-test/t/func_test.test
index e03d0dd0f0f..795479a21a9 100644
--- a/mysql-test/t/func_test.test
+++ b/mysql-test/t/func_test.test
@@ -17,6 +17,7 @@ select 2 in (3,2,5,9,5,1),"monty" in ("david","monty","allan"), 1.2 in (1.4,1.2,
select -1.49 or -1.49,0.6 or 0.6;
select 3 ^ 11, 1 ^ 1, 1 ^ 0, 1 ^ NULL, NULL ^ 1;
select 1 XOR 1, 1 XOR 0, 0 XOR 1, 0 XOR 0, NULL XOR 1, 1 XOR NULL, 0 XOR NULL;
+select 1 like 2 xor 2 like 1;
create table t1 (a int);
insert t1 values (1);
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 991a5f500e6..4b8e73f35ce 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -478,7 +478,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b,int *yystacksize);
%token CIPHER_SYM
%left SET_VAR
-%left OR_OR_CONCAT OR
+%left OR_OR_CONCAT OR XOR
%left AND
%left BETWEEN_SYM CASE_SYM WHEN_SYM THEN_SYM ELSE
%left EQ EQUAL_SYM GE GT_SYM LE LT NE IS LIKE REGEXP IN_SYM
@@ -488,7 +488,6 @@ bool my_yyoverflow(short **a, YYSTYPE **b,int *yystacksize);
%left '-' '+'
%left '*' '/' '%'
%left NEG '~'
-%left XOR
%left '^'
%right NOT
%right BINARY