[m4_if(m4_bregexp([m4_foreach([check], [m4_shift($@)], [m4_argn(3, check)])], [error:]), [-1], [0], [1])],
[m4_foreach([check], [m4_shift($@)],
[m4_define([i], m4_incr(i))dnl
[m4_if(m4_bregexp([m4_foreach([check], [m4_shift($@)], [m4_argn(3, check)])], [error:]), [-1], [0], [1])],
[m4_foreach([check], [m4_shift($@)],
[m4_define([i], m4_incr(i))dnl
[[1 OR $false], [true]],
[[1 OR $sysmis], [true]],
[[2 OR $sysmis], [sysmis],
[[1 OR $false], [true]],
[[1 OR $sysmis], [true]],
[[2 OR $sysmis], [sysmis],
- [error: DEBUG EVALUATE: An operand of the logical disjunction ("OR") operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]],
+ [error: DEBUG EVALUATE: An operand of the logical disjunction (`OR') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]],
- [error: DEBUG EVALUATE: An operand of the logical conjunction ("AND") operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]],
+ [error: DEBUG EVALUATE: An operand of the logical conjunction (`AND') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]],
[[0 AND $sysmis], [false]],
[[(1>2) + 1], [1.00]],
[[$true + $false], [1.00]])
[[0 AND $sysmis], [false]],
[[(1>2) + 1], [1.00]],
[[$true + $false], [1.00]])
[[$sysmis + 1], [sysmis]],
[[7676 + $sysmis], [sysmis]],
[[('foo') + 5], [error],
[[$sysmis + 1], [sysmis]],
[[7676 + $sysmis], [sysmis]],
[[('foo') + 5], [error],
dnl Arithmetic concatenation requires CONCAT:
[[('foo') + ('bar')], [error],
dnl Arithmetic concatenation requires CONCAT:
[[('foo') + ('bar')], [error],
dnl Lexical concatenation succeeds:
[['foo' + 'bar'], ["foobar"]],
[[1 +3 - 2 +4 -5], [1.00]],
[[1 - $true], [0.00]],
[[$true - 4/3], [-0.33]],
[['string' - 1e10], [error],
dnl Lexical concatenation succeeds:
[['foo' + 'bar'], ["foobar"]],
[[1 +3 - 2 +4 -5], [1.00]],
[[1 - $true], [0.00]],
[[$true - 4/3], [-0.33]],
[['string' - 1e10], [error],
- [warning: DEBUG EVALUATE: The exponentiation operator ("**") is left-associative, even though right-associative semantics are more useful. That is, "a**b**c" equals "(a**b)**c", not as "a**(b**c)". To disable this warning, insert parentheses.]])
+ [warning: DEBUG EVALUATE: The exponentiation operator (`**') is left-associative, even though right-associative semantics are more useful. That is, `a**b**c' equals `(a**b)**c', not as `a**(b**c)'. To disable this warning, insert parentheses.]])
- [error: DEBUG EVALUATE: An operand of the logical negation ("NOT") operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]],
+ [error: DEBUG EVALUATE: An operand of the logical negation (`NOT') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]],
- [error: DEBUG EVALUATE: An operand of the logical negation ("NOT") operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]],
+ [error: DEBUG EVALUATE: An operand of the logical negation (`NOT') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]],
[['foobar' = 'foobar'], [true]],
[['quux' = 'bar'], [false]],
[['bar ' = 'bar'], [true]],
[['foobar' = 'foobar'], [true]],
[['quux' = 'bar'], [false]],
[['bar ' = 'bar'], [true]],
- [warning: DEBUG EVALUATE: Chaining relational operators (e.g. "a < b < c") will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. "a < b AND b < c"). If chaining is really intended, parentheses will disable this warning (e.g. "(a < b) < c".)]],
+ [warning: DEBUG EVALUATE: Chaining relational operators (e.g. `a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. `a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. `(a < b) < c'.)]],
- [warning: DEBUG EVALUATE: Chaining relational operators (e.g. "a < b < c") will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. "a < b AND b < c"). If chaining is really intended, parentheses will disable this warning (e.g. "(a < b) < c".)]],
+ [warning: DEBUG EVALUATE: Chaining relational operators (e.g. `a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. `a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. `(a < b) < c'.)]],
- [warning: DEBUG EVALUATE: Chaining relational operators (e.g. "a < b < c") will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. "a < b AND b < c"). If chaining is really intended, parentheses will disable this warning (e.g. "(a < b) < c".)]],
+ [warning: DEBUG EVALUATE: Chaining relational operators (e.g. `a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. `a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. `(a < b) < c'.)]],
[[2 < = 2], [error],
[error: DEBUG EVALUATE: Syntax error in expression at `='.]],
[[1 <= 'foobar'], [error],
[[2 < = 2], [error],
[error: DEBUG EVALUATE: Syntax error in expression at `='.]],
[[1 <= 'foobar'], [error],
[['0123' <= '0123'], [true]],
[['0123' <= '0124'], [true]],
[['0124' le '0123'], [false]],
[['0123' <= '0123'], [true]],
[['0123' <= '0124'], [true]],
[['0124' le '0123'], [false]],
[['0123' lt '0123'], [false]],
[['0123' < '0124'], [true]],
[['0124' lt '0123'], [false]],
[['0123' lt '0123'], [false]],
[['0123' < '0124'], [true]],
[['0124' lt '0123'], [false]],
[[2 > = 2], [error],
[error: DEBUG EVALUATE: Syntax error in expression at `='.]],
[[1 >= 'foobar'], [error],
[[2 > = 2], [error],
[error: DEBUG EVALUATE: Syntax error in expression at `='.]],
[[1 >= 'foobar'], [error],
[['0123' ge '0123'], [true]],
[['0123' >= '0124'], [false]],
[['0124' >= '0123'], [true]],
[['0123' ge '0123'], [true]],
[['0123' >= '0124'], [false]],
[['0124' >= '0123'], [true]],
[['0123' gt '0123'], [false]],
[['0123' > '0124'], [false]],
[['0124' gt '0123'], [true]],
[['0123' gt '0123'], [false]],
[['0123' > '0124'], [false]],
[['0124' gt '0123'], [true]],
[['foobar' <> 'foobar'], [false]],
[['quux' ne 'bar'], [true]],
[['bar ' <> 'bar'], [false]],
[['foobar' <> 'foobar'], [false]],
[['quux' ne 'bar'], [true]],
[['bar ' <> 'bar'], [false]],
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).]],
[[range(1, 2)], [error],
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).]],
[[range(1, 2)], [error],
- [error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have even number of arguments in list.]],
+ [error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have an even number of arguments in list.]],
[[range(1, 2, 3, 4)], [error],
[[range(1, 2, 3, 4)], [error],
- [error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have even number of arguments in list.]],
+ [error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have an even number of arguments in list.]],
[[range(1, 2, 3, 4, 5, 6)], [error],
[[range(1, 2, 3, 4, 5, 6)], [error],
- [error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have even number of arguments in list.]],
+ [error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have an even number of arguments in list.]],
[[range('1', 2, 3)], [error],
[error: DEBUG EVALUATE: Function invocation range(string, number, number) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
[[range('1', 2, 3)], [error],
[error: DEBUG EVALUATE: Function invocation range(string, number, number) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).]],
[[range('1', '2')], [error],
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).]],
[[range('1', '2')], [error],
- [error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have even number of arguments in list.]],
+ [error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have an even number of arguments in list.]],
[[range('1', '2', '3', '4')], [error],
[[range('1', '2', '3', '4')], [error],
- [error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have even number of arguments in list.]],
+ [error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have an even number of arguments in list.]],
[[range('1', '2', '3', '4', '5', '6')], [error],
[[range('1', '2', '3', '4', '5', '6')], [error],
- [error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have even number of arguments in list.]],
+ [error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have an even number of arguments in list.]],
[[range(1, '2', '3')], [error],
[error: DEBUG EVALUATE: Function invocation range(number, string, string) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
[[range(1, '2', '3')], [error],
[error: DEBUG EVALUATE: Function invocation range(number, string, string) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)