summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 26717c0)
raw | patch | inline | side by side (parent: 26717c0)
author | Sebastian Harl <sh@tokkee.org> | |
Sun, 1 Mar 2015 15:22:09 +0000 (16:22 +0100) | ||
committer | Sebastian Harl <sh@tokkee.org> | |
Sun, 1 Mar 2015 15:22:09 +0000 (16:22 +0100) |
src/frontend/analyzer.c | patch | blob | history |
index e9e1d138c80c9bd5177caa7f4d38b02f30a173b3..4e29fdf85fb956312466d50b514e3bae984fb135 100644 (file)
--- a/src/frontend/analyzer.c
+++ b/src/frontend/analyzer.c
if (analyze_expr(context, CMP_M(m)->right, errbuf))
return -1;
- if ((CMP_M(m)->left->data_type > 0)
- && (CMP_M(m)->left->data_type & SDB_TYPE_ARRAY)) {
- cmp_error(errbuf, m->type, CMP_M(m)->left->data_type,
- CMP_M(m)->right->data_type);
- return -1;
- }
+ /* the left operand may be a scalar or an array but the element
+ * type has to match */
if ((CMP_M(m)->right->data_type > 0)
&& (! (CMP_M(m)->right->data_type & SDB_TYPE_ARRAY))) {
cmp_error(errbuf, m->type, CMP_M(m)->left->data_type,
CMP_M(m)->right->data_type);
return -1;
}
-
if ((CMP_M(m)->left->data_type > 0)
&& (CMP_M(m)->right->data_type > 0)) {
if ((CMP_M(m)->left->data_type & 0xff)