X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2FChangeLog;h=b02a87bb9ccc3f911615834272075c408d276e03;hb=fd05c51301e8051c3ac61ca06c57ecda0e22fbea;hp=0dcff3dc5c2f881c80bce348595d74501d2b3d02;hpb=f2828f801736701c0294803b5dedd4c4ab63b45e;p=pspp diff --git a/src/ChangeLog b/src/ChangeLog index 0dcff3dc5c..b02a87bb9c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,507 @@ +Mon Mar 15 20:07:29 2004 Ben Pfaff + + Get rid of static vars in autorecode.c. + + * autorecode.c: (struct autorecode_trns) Rename `arc' to `specs', + `n_arc' to `spec_cnt'. All references updated. + (static var v_src) Removed. + (static var v_dest) Removed. + (static var h_trns) Removed. + (static var nv_src) Removed. + (static var descend) Removed. + (static var print) Removed. + (enum direction) New enum. + (struct autorecode_pgm) New structure. + (cmd_autorecode) Use struct autorecode_pgm instead of static vars. + Move n_dest local var into struct autorecode_pgm for ease of + clean-up. Use arc_free(). + (arc_free) New function. + (recode) Modify to take struct autorecode_pgm * parameter instead + of using statics. Let the caller clean up. + (autorecode_proc_func) Use struct autorecode_pgm * auxiliary data + instead of statics. Rearrange code a little. + +Mon Mar 15 00:25:02 2004 Ben Pfaff + + Get rid of static, global vars in recode.c. Remove debug code. + + * recode.c: (static var head) Removed. + (global var v) Removed. + (global var nv) Removed. + (cmd_recode) New local variables head, v, nv. Initialize and free + v. Don't call debug_print(). + [DEBUGGING] (dump_dest) Removed. + [DEBUGGING] (debug_print) Removed. + +Mon Mar 15 00:14:49 2004 Ben Pfaff + + Get rid of static vars in expr-opt.c. + + * expr-opt.c: (static var e) Removed. + (static var nop) Removed. + (static var mop) Removed. + (static var ndbl) Removed. + (static var mdbl) Removed. + (static var nstr) Removed. + (static var mstr) Removed. + (static var nvars) Removed. + (static var mvars) Removed. + (struct expr_dump_state) New structure. + (dump_expression) Use new struct expr_dump_state instead of static + vars and pass to functions we call. + (dump_node) Use struct expr_dump_state * parameter. + (emit) Ditto. + (emit_num_con) Ditto. + (emit_str_con) Ditto. + (emit_var) Ditto. + +Mon Mar 15 00:03:51 2004 Ben Pfaff + + Get rid of static var in COUNT. + + * count.c: (static var head) Move into cmd_count(). + (cmd_count) [DEBUGGING] Don't call debug_print. + [DEBUGGING] (debug_print) Removed. + +Sun Mar 14 23:56:09 2004 Ben Pfaff + + Get rid of static vars in VALUE LABELS, ADD VALUE LABELS. + + * val-labs.c: (static var v) Removed. + (static var nv) Removed. + [DEBUGGING] (debug_print) Removed. + (verify_val_labs) Add struct variable **, int parameters. + (get_label) Ditto. Improve error messages, streamline. + (erase_labels) New function for erasing value labels, taking over + part of verify_val_labs()'s function. + (init) Removed. + (done) Removed. + (cmd_value_labels) No need to call init() or done() anymore. + (cmd_add_value_labels) Ditto. + (do_value_labels) Add vars, var_cnt local variables. Clean up + after them internally. Call erase_labels() if we should. Don't + call debug_print(). + +Sun Mar 14 23:33:53 2004 Ben Pfaff + + Get rid of static vars in MATCH FILES. + + * get.c: (static var mtf_head) Removed. + (static var mtf_tail) Removed. + (static var mtf_by) Removed. + (static var mtf_n_by) Removed. + (static var mtf_master) Removed. + (static var mtf_seq_num) Removed. + (static var mtf_seq_nums) Removed. + (static var mtf_sink) Removed. + (static var mtf_case) Removed. + (struct mtf_proc) New structure. + (cmd_match_files) Use struct mtf_proc instead of static vars. + (mtf_processing_finish) Ditto. + (mtf_free) Ditto. + (mtf_delete_file_in_place) Ditto. + (mtf_read_nonactive_records) Ditto. + (mtf_compare_BY_values) Ditto. + (mtf_processing) Ditto. + (mtf_merge_dictionary) Ditto. + +Sun Mar 14 22:48:12 2004 Ben Pfaff + + * command.def: Add CASESTOVARS, VARSTOCASES unimplemented commands. + + * dictionary.c: (dict_rename_var) Add assertion. + (dict_contains_var) Check by index instead of name. + +Sun Mar 14 22:01:02 2004 Ben Pfaff + + Get rid of compaction_necessary, compaction_nval, compaction_case. + Redo VFM interface. Replace disk_sink and memory_sink by + storage_sink, disk_source and memory_source by storage_source. + + * vfm.h: (struct case_sink) Add `dict', `idx_to_fv', `value_cnt' + members. + + * vfm.c: + (struct write_case_data) Remove `begin_func', `end_func', + `func_aux' members. Add `aux', `trns_case', `sink_case', + `cases_written', `cases_analyzed' members. + (global var compaction_necessary) Make static. + (global var compaction_nval) Removed. + (global var compaction_case) Removed. + (static var case_count) Removed. + (struct procedure_aux_data) Removed. + (struct split_aux_data) Removed. + (procedure) Remove begin_func, end_func parameters. Rewrite. + (static var not_canceled) Removed. + (process_active_file) Removed. + (process_active_file_write_case) Removed. + (process_active_file_output_case) Removed. + (prepare_for_writing) Moved into open_active_file(). + (arrange_compaction) Ditto. + (setup_lag) Ditto. + (open_active_file) Rewrote. + (write_case) New function. + [DEBUGGING] (index_to_varname) Removed. + (execute_transformations) New function. + (exclude_this_case) Renamed filter_case(), changed interface. + (clear_case) Added struct ccase * parameter to interface. + (close_active_file) Added struct write_case_data * parameter, + rewrote. + (disk_sink_create) Removed. + (disk_sink_destroy) Removed. + (disk_sink_make_source) Removed. + (disk_sink_write) Removed. + (disk_source_count) Removed. + (disk_source_destroy) Removed. + (disk_source_read) Removed. + (global var disk_sink_class) Removed. + (global var disk_source_class) Removed. + (global var memory_sink_class) Removed. + (global var memory_source_class) Removed. + (memory_sink_create) Removed. + (memory_sink_destroy) Removed. + (memory_sink_make_source) Removed. + (memory_sink_write) Removed. + (memory_source_count) Removed. + (memory_source_destroy) Removed. + (memory_source_get_cases) Removed. + (memory_source_read) Removed. + (memory_source_set_cases) Removed. + (struct disk_stream_info) Removed. + (struct memory_sink_info) Removed. + (struct memory_source_info) Removed. + (write_active_file_to_disk) Removed. + (destroy_storage_stream_info) New function. + (global var null_sink_class) New var. + (global var storage_sink_class) New var. + (global var storage_source_class) New var. + (open_storage_file) New function. + (storage_sink_destroy) New function. + (storage_sink_make_source) New function. + (storage_sink_open) New function. + (storage_sink_write) New function. + (storage_source_count) New function. + (storage_source_destroy) New function. + (storage_source_get_cases) New function. + (storage_source_on_disk) New function. + (storage_source_read) New function. + (storage_source_set_cases) New function. + (storage_source_to_disk) New function. + (storage_to_disk) New function. + (struct storage_stream_info) New structure. + (write_storage_file) New function. + (procedure_write_case) Removed. + (create_case_source) Add `struct dictionary *' parameter, all + references updated. + (create_case_sink) Ditto. + (free_case_sink) New function. + (struct split_aux_data) New structure. + (procedure_with_splits) New function implementing what procedure() + used to. + (SPLIT_FILE_proc_func) Removed. + (procedure_with_splits_callback) New function. + (equal_splits) New function. + + * aggregate.c: Pass around a struct instead of using statics. + (static var outfile) Remove. + (enum type) Give it tag `missing_treatment'. + (static var missing) Remove. + (static var sort) Remove. + (static var agr_first) Remove. + (static var agr_next) Remove. + (static var case_count) Remove. + (static var prev_case) Remove. + (static var buf64_1xx) Remove. + (static var buf_1xx) Remove. + (struct agr_proc) New structure incorporating the above. + (cmd_aggregate) Use new struct. Clean up error handling using + agr_destroy(). Completely rewrite actual implementation of + aggregation. + (create_sysfile) Add struct agr_proc * parameter, modify + accordingly. + (parse_aggregate_functions) Ditto. + (free_aggregate_functions) Ditto. Rename agr_destroy(). + (aggregate_single_case) Add struct agr_proc * parameter, modify + accordingly. + (accumulate_aggregate_info) Ditto. + (dump_aggregate_info) Ditto. + (initialize_aggregate_info) Ditto. + (agr_00x_trns_proc) Removed. + (agr_00x_end_func) Removed. + (agr_10x_trns_proc) Removed. + (agr_10x_trns_free) Removed. + (agr_10x_end_func) Removed. + (agr_11x_read) Removed. + (agr_11x_finish) Removed. + [DEBUGGING] (debug_print) Removed. + (write_case_to_sfm) Add struct agr_proc * parameter, modify + accordingly. + (agr_to_active_file) New function. + (presorted_agr_to_sysfile) New function. + (sort_agr_to_sysfile) New function. + + * autorecode.c: (cmd_autorecode) Use procedure_with_splits(). + + * crosstabs.q: (internal_cmd_crosstabs) Ditto. + + * descript.q: (cmd_descriptives) Ditto. + + * dfm.c: (cmd_begin_data) Check for storage_source_class. Adapt + to new procedure() interface. + + * command.c: (cmd_execute) Adapt to new procedure() interface. + + * dictionary.c: (dict_compact_values) Also delete scratch + variables. + (dict_get_compacted_value_cnt) New function. + (dict_get_compacted_idx_to_fv) New function. + + * flip.c: (cmd_flip) Warn about and cancel TEMPORARY. + (cmd_flip) Adapt to new procedure() interface. + (flip_sink_write) Use sink->idx_to_fv. + + * frequencies.q: (internal_cmd_frequencies) Use + procedure_with_splits(). + + * get.c: (cmd_save_internal) Adapt to new procedure() interface. + (static var mtf_sink) New static var. + (static var mtf_case) New static var. + (cmd_match_files) Warn about and cancel TEMPORARY. Redo the way + we actually implement the matching. + (mtf_delete_file_in_place) Use mtf_case. + (mtf_processing) Use mtf_case and mtf_sink. + (cmd_export) Adapt to new procedure() interface. + + * levene.c: (levene) Use procedure_with_splits(). + + * list.q: (cmd_list) Use procedure_with_splits(). + + * matrix-data.c: (read_matrices_without_rowtype) Adapt to new + procedure() interface. + (read_matrices_with_rowtype) Ditto. + + * modify-vars.c; (cmd_modify_vars) Warn about and cancel + TEMPORARY. Adapt to new procedure() interface. + + * rename-vars.c: Warn about and cancel TEMPORARY. + + * sort.c: (cmd_sort_cases) Warn about TEMPORARY. + (sort_cases) Use dict_get_compacted_value_cnt() instead of + compaction_nval. Adapt to new procedure() interface. Use + storage_source_to_disk(). + (do_internal_sort) Don't try to dump the cases to memory. + (compare_case_lists) Pass null idx_to_fv. + (struct initial_run_state) Add `idx_to_fv' member. Remove + `case_size' member. + (write_initial_runs) Don't initialize irs->case_size. Adapt to + new procedure() interface. Reset irs->idx_to_fv after calling + procedure(). + (sort_sink_write) Set irs->idx_to_fv. Use case_size from struct + sort_cases_pgm. Pass irs, not struct sort_cases_pgm to + push_heap(). + (destroy_initial_run_state) Don't dereference irs after freeing + it. + (allocate_cases) Don't calculate case_size locally. + (compare_record) Add idx_to_fv parameter. + (compare_record_run) Change parameter from struct sort_cases_pgm * + to struct initial_run_state *. Pass irs->idx_to_fv to + compare_record(). + (compare_record_run) Third parameter now a struct + initial_run_state *. + (output_record) No need for out_case anymore. Pass irs, not + struct sort_cases_pgm to pop_heap(). Use case_size from struct + sort_cases_pgm. + (merge) Use case_size from struct sort_cases_pgm. + (merge_once) Use case_size from struct sort_cases_pgm. + Pass null pointer to compare_record() as idx_to_fv. + (global var sort_sink_class) Make static. + + * t-test.q: (cmd_t_test) Use procedure_with_splits(). + + * temporary.c: Remove debugging crap. + +Sat Mar 13 14:19:52 WST 2004 John Darrington + + * t-test.q, levene.c: Fixed up the handling of MISSING values + int the T-TEST + +Fri Mar 12 16:23:35 WST 2004 John Darrington + + * t-test.q, levene.c: Added support for T-TEST /GROUP where only + one value is given. + +Wed Mar 10 23:25:13 2004 Ben Pfaff + + Change explicit variable name checks into use of + dict_class_from_id(). + + * dictionary.c: (dict_create_var) Change explicit variable name + check into use of dict_class_from_id(). + + * get.c: (trim_dictionary) Ditto. + + * sel-if.c: (cmd_filter) Ditto. + + * sysfile-info.c: (cmd_display) Ditto. + + * vars-prs.c: (parse_DATA_LIST_vars) Ditto. + + * vfm.c: (arrange_compaction) Ditto. + + * weight.c: (cmd_weight) Ditto. + +Wed Mar 10 21:16:34 2004 Ben Pfaff + + * temporary.c: (cmd_temporary) When TEMPORARY was the first + transformation following the input program, if any, for some + reason we special-cased f_trns. That's just wrong. It should + always be set to n_trns. + +Tue Mar 9 23:44:40 2004 Ben Pfaff + + * format.c: (parse_format_specifier_name) Fix brown-bag bug + introduced in last check-in. + +Tue Mar 9 23:10:41 2004 Ben Pfaff + + * format.c: (global array translate_fmt[]) Removed. + (translate_fmt) New function as replacement. + (parse_format_specifier_name) Rewrite. + + * pfm-read.c: (convert_format) Use translate_fmt() instead of + translate_fmt[]. + + * sfm-read.c: (parse_format_spec) Ditto. + + * postscript.c: (text) Fix handling of fonts with missing + ligatures. + + * sort.c: (struct external_sort) Add temp_name member. + (destroy_external_sort) Free temp_dir, temp_name members. + (init_external_sort) Allocate temp_name. + (get_temp_file_name) Change prototype. + (open_temp_file) Deal with change to get_temp_file_name(). + (close_temp_file) Ditto. + (remove_temp_file) Ditto. + (write_temp_file) Ditto. + (read_temp_file) Ditto. + (sort_sink_destroy) Removed. + (sort_sink_class) Change destroy member to null. + +Tue Mar 9 22:36:34 2004 Ben Pfaff + + Eliminate temp_case. + + * aggregate.c: (cmd_aggregate) No need to save/restore temp_case + anymore. Use agr_11x_finish(). + (aggregate_single_case) Make first param const. + (accumulate_aggregate_info) Ditto. + (agr_00x_end_func) Use compaction_case, not temp_case. + (agr_11x_func) Break into agr_11x_read(), agr_11x_finish(). + + * data-list.c: (struct data_list_pgm) Add `case_size' member. + (cmd_data_list) Initialize case_size. + (read_from_data_list_fixed) Add struct ccase * param, use instead + of temp_case. + (read_from_data_list_free) Ditto. + (read_from_data_list_list) Ditto. + (read_one_case) Rename data_list_trns_proc(), all references + updated. Add argument in calling above functions. Use c + argument instead of temp_case. + (destroy_dls) Rename data_list_trns_free(), all references + updated. + + * expr-evl.c: (expr_evaluate) Make second parameter const. + + * file-type.c: (struct file_type_pgm) Add `case_size' member. + (cmd_end_file_type) Initialize `case_size'. + (file_type_source_read) Add struct ccase * parameter. Use instead + of temp_case. + + * flip.c: Rewritten. + + * get.c: (struct get_pgm) New structure to keep track of + case_size. + (cmd_get) Initialize case_size. + (cmd_import) Ditto. + (get_source) Deal with struct get_pgm. + (get_source_read) Add struct ccase * parameter, use instead of + temp_case. + (import_source_read) Ditto. + + * get.c: Use a null pointer instead of temp_case to represent the + "current case" in a struct mtf_file's input member. + (mtf_processing_finish) Pass null to mtf_processing(), not + temp_case. + (mtf_read_nonactive_records) Don't set iter->input to temp_case. + (mtf_compare_BY_values) Add extra arg, use instead of null input + members. + (mtf_processing) Use c parameter instead of temp_case. Pass + compaction_case to process_active_file_output_case(). + + * glob.c: (global variable temp_case) Removed. + + * inpt-pgm.c: (struct input_program_pgm) Add `case_size' member. + (cmd_input_program) Initialize case_size. Set + vfm_source->value_cnt. + (init_case) Add struct ccase * parameter, use instead of + temp_case. + (clear_case) Ditto. + (input_program_source_read) Ditto. + + * matrix-data.c: (matrix_data_read_without_rowtype) Ditto. + (dump_cell_content) Ditto. + (nr_output_data) Ditto. + (read_matrices_without_rowtype) Ditto. + (matrix_data_read_with_rowtype) Ditto. + (wr_read_splits) Ditto. + (wr_output_data) Ditto. + + * sort.h: (struct sort_cases_pgm) New member `case_size'. + + * sort.c: (sort_cases) Initialize scp->case_size. + (struct external_sort) Remove `case_size' member. + (write_initial_runs) Only call vfm_sink->class_destroy if + non-null. + (struct sort_source_aux) New structure. + (sort_source_read_helper) New function. + (sort_source_read) Use sort_source_read_helper(). + (read_sort_output) Change interface to be more reasonable. + (read_internal_sort_output) Ditto. + (read_external_sort_output) Ditto. + + * vars-prs.c: (dict_class_to_name) Pass return value through + gettext. + + * vfm.c: (struct procedure_aux_data) Add `trns_case' member. + (procedure) Initialize trns_case. + (procedure) Pass trns_case to vfm_source->class->read(). + Free trns_case. + (process_active_file) Start using struct procedure_aux_data. + (process_active_file_write_case) Pass trns_case to + transformations, lag_case(), clear_case(). + (process_active_file_output_case) Add struct ccase * parameter. + (create_trns_case) New function. + (make_temp_case) Removed. + (vector_initialization) Removed. + (close_active_file) Only call make_source if non-null, otherwise + set vfm_source to null pointer. Don't free temp_case. + (disk_source_read) Add struct ccase * parameter, use instead of + temp_case. + (memory_source_read) Ditto. + (lag_case) Add const struct ccase * member. + (procedure_write_case) Use trns_case instead of temp_case. + (clear_case) Add struct ccase * member, use instead of temp_case. + (exclude_this_case) Ditto. + (create_case_source) Add struct dictionary * parameter, use to + initialize source->value_cnt. + + * vfm.h: (struct case_source) Add `value_cnt' member. + (struct case_source_class) Add struct ccase * parameter to `read' + member function pointer. + (struct case_sink_class) Make struct ccase * parameter const in + `write' member function pointer. + Wed Mar 3 20:44:37 2004 Ben Pfaff Fix a lot of "possibly uninitialized variable" warnings. Some of