Changeset: fbbfe7b85d8f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=fbbfe7b85d8f
Modified Files:
gdk/gdk_qsort.c
gdk/gdk_qsort_impl.h
sql/server/sql_parser.y
Branch: default
Log Message:
Merge with Aug2018 branch.
diffs (83 lines):
diff --git a/gdk/gdk_qsort.c b/gdk/gdk_qsort.c
--- a/gdk/gdk_qsort.c
+++ b/gdk/gdk_qsort.c
@@ -273,21 +273,7 @@ struct qsort_t {
#define GDKqsort_impl GDKqsort_impl_any
#define INITIALIZER int z
-#if SIZEOF_VAR_T == 8
-#define OFF(i) (buf->base + \
- (buf->hs == 1 ? ((unsigned char *) h)[i] : \
- buf->hs == 2 ? ((unsigned short *) h)[i] : \
- buf->hs == 4 ? ((unsigned int *) h)[i] : \
- ((var_t *) h)[i]))
-#else
-#define OFF(i) (buf->base + \
- (buf->hs == 1 ? ((unsigned char *) h)[i] : \
- buf->hs == 2 ? ((unsigned short *) h)[i] : \
- ((var_t *) h)[i]))
-#endif
-#define CMP(i, j) (buf->base ? \
- (*buf->cmp)(OFF(i), OFF(j)) : \
- (*buf->cmp)(h + (i) * buf->hs, h + (j) * buf->hs))
+#define CMP(i, j) (*buf->cmp)(h + (i) * buf->hs, h + (j) * buf->hs)
/* EQ is only ever called directly after LE with the same arguments */
#define EQ(i, j) (z == 0)
#define LE(i, j) ((z = CMP(i, j)) <= 0)
@@ -329,8 +315,7 @@ GDKqsort(void *restrict h, void *restric
GDKqsort_impl_var(&buf, h, t, n);
return;
}
- if (base)
- tpe = TYPE_str; /* we need the default case */
+ assert(base == NULL);
tpe = ATOMbasetype(tpe);
@@ -383,8 +368,7 @@ GDKqsort_rev(void *restrict h, void *res
GDKqsort_impl_var_rev(&buf, h, t, n);
return;
}
- if (base)
- tpe = TYPE_str; /* we need the default case */
+ assert(base == NULL);
tpe = ATOMbasetype(tpe);
diff --git a/gdk/gdk_qsort_impl.h b/gdk/gdk_qsort_impl.h
--- a/gdk/gdk_qsort_impl.h
+++ b/gdk/gdk_qsort_impl.h
@@ -50,7 +50,8 @@
*/
static void
-GDKqsort_impl(struct qsort_t *buf, char *restrict h, char *restrict t, size_t
n)
+GDKqsort_impl(const struct qsort_t *restrict buf,
+ char *restrict h, char *restrict t, size_t n)
{
size_t a, b, c, d;
size_t r;
diff --git a/sql/server/sql_parser.y b/sql/server/sql_parser.y
--- a/sql/server/sql_parser.y
+++ b/sql/server/sql_parser.y
@@ -2862,16 +2862,12 @@ copyfrom_stmt:
append_list(l, $4);
append_symbol(l, $6);
$$ = _symbol_create_list( SQL_COPYLOADER, l ); }
- | COPY opt_nr BINARY INTO qname opt_column_list FROM string_commalist /*
binary copy from */ opt_constraint
+ | COPY BINARY INTO qname opt_column_list FROM string_commalist
opt_constraint
{ dlist *l = L();
- if ($2 != NULL) {
- yyerror(m, "COPY INTO: cannot pass number of records when using
binary COPY INTO");
- YYABORT;
- }
+ append_list(l, $4);
append_list(l, $5);
- append_list(l, $6);
- append_list(l, $8);
- append_int(l, $9);
+ append_list(l, $7);
+ append_int(l, $8);
$$ = _symbol_create_list( SQL_BINCOPYFROM, l ); }
| COPY query_expression_def INTO string opt_seps opt_null_string
{ dlist *l = L();
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list