X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flanguage%2Fexpressions%2Foptimize.c;h=90d90c676ca553339ff895208b57a2d8969e6511;hb=115c7ddfdd16e742de67b00844d0d09e11c88d5f;hp=b280b6d737485527d92e5fde4b6d48af97d63e99;hpb=dcf9b154cbcaa35c3d8459a201b77eec8bcb30bd;p=pspp-builds.git diff --git a/src/language/expressions/optimize.c b/src/language/expressions/optimize.c index b280b6d7..90d90c67 100644 --- a/src/language/expressions/optimize.c +++ b/src/language/expressions/optimize.c @@ -1,6 +1,5 @@ /* PSPP - computes sample statistics. Copyright (C) 1997-9, 2000 Free Software Foundation, Inc. - Written by Ben Pfaff . This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as @@ -23,17 +22,18 @@ #include #include #include -#include "alloc.h" -#include "calendar.h" -#include "data-in.h" -#include "message.h" +#include +#include +#include +#include +#include #include "evaluate.h" #include "helpers.h" -#include "misc.h" -#include "pool.h" +#include +#include #include "public.h" -#include "str.h" -#include "variable.h" +#include +#include static union any_node *evaluate_tree (struct composite_node *, struct expression *); @@ -44,7 +44,7 @@ expr_optimize (union any_node *node, struct expression *e) { int nonconst_cnt = 0; /* Number of nonconstant children. */ int sysmis_cnt = 0; /* Number of system-missing children. */ - struct operation *op; + const struct operation *op; struct composite_node *c; int i; @@ -141,9 +141,9 @@ static double get_number_arg (struct composite_node *, size_t arg_idx); static double *get_number_args (struct composite_node *, size_t arg_idx, size_t arg_cnt, struct expression *); -static struct fixed_string get_string_arg (struct composite_node *, +static struct substring get_string_arg (struct composite_node *, size_t arg_idx); -static struct fixed_string *get_string_args (struct composite_node *, +static struct substring *get_string_args (struct composite_node *, size_t arg_idx, size_t arg_cnt, struct expression *); static const struct fmt_spec *get_format_arg (struct composite_node *, @@ -157,12 +157,10 @@ evaluate_tree (struct composite_node *node, struct expression *e) #include "optimize.inc" default: - assert (0); + NOT_REACHED (); } - /* Not reached. */ - assert (0); - abort (); + NOT_REACHED (); } static double @@ -187,7 +185,7 @@ get_number_args (struct composite_node *c, size_t arg_idx, size_t arg_cnt, return d; } -static struct fixed_string +static struct substring get_string_arg (struct composite_node *c, size_t arg_idx) { assert (arg_idx < c->arg_cnt); @@ -195,11 +193,11 @@ get_string_arg (struct composite_node *c, size_t arg_idx) return c->args[arg_idx]->string.s; } -static struct fixed_string * +static struct substring * get_string_args (struct composite_node *c, size_t arg_idx, size_t arg_cnt, struct expression *e) { - struct fixed_string *s; + struct substring *s; size_t i; s = pool_alloc (e->expr_pool, sizeof *s * arg_cnt); @@ -236,7 +234,7 @@ emit_number (struct expression *e, double n) } static void -emit_string (struct expression *e, struct fixed_string s) +emit_string (struct expression *e, struct substring s) { allocate_aux (e, OP_string)->string = s; } @@ -302,14 +300,14 @@ flatten_atom (union any_node *n, struct expression *e) break; default: - abort (); + NOT_REACHED (); } } static void flatten_composite (union any_node *n, struct expression *e) { - struct operation *op = &operations[n->type]; + const struct operation *op = &operations[n->type]; size_t i; for (i = 0; i < n->composite.arg_cnt; i++) @@ -363,7 +361,7 @@ flatten_node (union any_node *n, struct expression *e) else if (is_composite (n->type)) flatten_composite (n, e); else - abort (); + NOT_REACHED (); } static union operation_data *