X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flanguage%2Fexpressions%2Foperations.def;h=b7783257cdd990548541ee68b60c638bcf0476e7;hb=38993354cabb6fc37bb882be92f9a49e9aeb4c88;hp=844cab7e17ed133393d983bc02e6bf606b96ea4e;hpb=ebd0dcdfe65da02a6e541ceea0226c9b0b8d7a47;p=pspp diff --git a/src/language/expressions/operations.def b/src/language/expressions/operations.def index 844cab7e17..b7783257cd 100644 --- a/src/language/expressions/operations.def +++ b/src/language/expressions/operations.def @@ -581,7 +581,8 @@ string function RTRIM (string s, string c) function NUMBER (string s, ni_format f) { union value out; - data_in (ss_head (s, f->w), LEGACY_NATIVE, f->type, f->d, 0, 0, NULL, &out, 0); + data_in (ss_head (s, f->w), LEGACY_NATIVE, f->type, 0, 0, &out, 0, NULL); + data_in_imply_decimals (s, LEGACY_NATIVE, f->type, f->d, &out); return out.f; } @@ -961,7 +962,8 @@ absorb_miss no_opt string operator VEC_ELEM_STR (idx) if (idx >= 1 && idx <= vector_get_var_cnt (v)) { struct variable *var = vector_get_var (v, (size_t) idx - 1); - return copy_string (e, case_str (c, var), var_get_width (var)); + return copy_string (e, CHAR_CAST_BUG (char *, case_str (c, var)), + var_get_width (var)); } else { @@ -1029,7 +1031,8 @@ no_opt perm_only string function LAG (str_var v, pos_int n_before) { const struct ccase *c = lagged_case (ds, n_before); if (c != NULL) - return copy_string (e, case_str (c, v), var_get_width (v)); + return copy_string (e, CHAR_CAST_BUG (char *, case_str (c, v)), + var_get_width (v)); else return empty_string; } @@ -1040,7 +1043,8 @@ no_opt perm_only string function LAG (str_var v) { const struct ccase *c = lagged_case (ds, 1); if (c != NULL) - return copy_string (e, case_str (c, v), var_get_width (v)); + return copy_string (e, CHAR_CAST_BUG (char *, case_str (c, v)), + var_get_width (v)); else return empty_string; }