X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flanguage%2Fexpressions%2Fhelpers.c;h=2d707e9941dd2c480bf1446d2d81e9f697192988;hb=638a86001fe7a237bd6c19a181d796305290d72a;hp=a0f0c0fc735f394d5c17f4cc74347f2beb44e939;hpb=f5c108becd49d78f4898cab11352291f5689d24e;p=pspp diff --git a/src/language/expressions/helpers.c b/src/language/expressions/helpers.c index a0f0c0fc73..2d707e9941 100644 --- a/src/language/expressions/helpers.c +++ b/src/language/expressions/helpers.c @@ -1,3 +1,19 @@ +/* PSPP - a program for statistical analysis. + Copyright (C) 2008 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + #include #include "helpers.h" #include @@ -14,10 +30,12 @@ expr_error (void *aux UNUSED, const char *format, ...) struct msg m; va_list args; - m.category = MSG_SYNTAX; - m.severity = MSG_ERROR; + m.category = MSG_C_SYNTAX; + m.severity = MSG_S_ERROR; va_start (args, format); m.text = xvasprintf (format, args); + m.where.file_name = NULL; + m.where.line_number = 0; va_end (args); msg_emit (&m); @@ -131,15 +149,6 @@ enum date_unit DATE_SECONDS }; -#ifndef HAVE_TRUNC -/* Return X rounded toward zero. */ -static double -trunc (double x) -{ - return x >= 0.0 ? floor (x) : ceil (x); -} -#endif /* !HAVE_TRUNC */ - /* Stores in *UNIT the unit whose name is NAME. Return success. */ static enum date_unit @@ -172,9 +181,11 @@ recognize_unit (struct substring name, enum date_unit *unit) return true; } - msg (SE, _("Unrecognized date unit \"%.*s\". " - "Valid date units are \"years\", \"quarters\", \"months\", " - "\"weeks\", \"days\", \"hours\", \"minutes\", and \"seconds\"."), + /* TRANSLATORS: Don't translate the the actual unit names `weeks', `days' etc + They must remain in their original English. */ + msg (SE, _("Unrecognized date unit `%.*s'. " + "Valid date units are `years', `quarters', `months', " + "`weeks', `days', `hours', `minutes', and `seconds'."), (int) ss_length (name), ss_data (name)); return false; } @@ -323,7 +334,7 @@ recognize_method (struct substring method_name, enum date_sum_method *method) else { msg (SE, _("Invalid DATESUM method. " - "Valid choices are \"closest\" and \"rollover\".")); + "Valid choices are `closest' and `rollover'.")); return false; } } @@ -397,7 +408,7 @@ expr_date_sum (double date, double quantity, struct substring unit_name, } int -compare_string (const struct substring *a, const struct substring *b) +compare_string_3way (const struct substring *a, const struct substring *b) { size_t i; @@ -582,14 +593,14 @@ ncdf_beta (double x, double a, double b, double lambda) double cdf_bvnor (double x0, double x1, double r) { - double z = x0 * x0 - 2. * r * x0 * x1 + x1 * x1; + double z = pow2 (x0) - 2. * r * x0 * x1 + pow2 (x1); return exp (-z / (2. * (1 - r * r))) * (2. * M_PI * sqrt (1 - r * r)); } double idf_fdist (double P, double df1, double df2) { - double temp = gslextras_cdf_beta_Pinv (P, df1 / 2, df2 / 2); + double temp = gsl_cdf_beta_Pinv (P, df1 / 2, df2 / 2); return temp * df2 / ((1. - temp) * df1); }