X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdata%2Fsys-file-writer.c;h=000534c4844a2dd6bd2237c658add8f66c949109;hb=f89de8c330e8f82f0e7195c4d35588cfcbdd02fc;hp=b4d4ff29b99cc9b8d8a8728f7510f78ba8159b62;hpb=ebccf00cbddbcadb5883fa98ddbccbea67642295;p=pspp-builds.git diff --git a/src/data/sys-file-writer.c b/src/data/sys-file-writer.c index b4d4ff29..000534c4 100644 --- a/src/data/sys-file-writer.c +++ b/src/data/sys-file-writer.c @@ -295,9 +295,9 @@ sfm_open_writer (struct file_handle *fh, struct dictionary *d, { struct { - int32_t rec_type P; - int32_t filler P; - } + int32_t rec_type ; + int32_t filler ; + } ATTRIBUTE((packed)) rec_999; rec_999.rec_type = 999; @@ -489,9 +489,9 @@ write_variable (struct sfm_writer *w, const struct variable *v) { struct label { - int32_t label_len P; - char label[255] P; - } + int32_t label_len ; + char label[255] ; + } ATTRIBUTE((packed)) l; int ext_len; @@ -533,17 +533,17 @@ write_value_labels (struct sfm_writer *w, struct variable *v, int idx) { struct value_label_rec { - int32_t rec_type P; - int32_t n_labels P; - flt64 labels[1] P; - }; + int32_t rec_type ; + int32_t n_labels ; + flt64 labels[1] ; + } ATTRIBUTE((packed)); struct var_idx_rec { - int32_t rec_type P; - int32_t n_vars P; - int32_t vars[1] P; - }; + int32_t rec_type ; + int32_t n_vars ; + int32_t vars[1] ; + } ATTRIBUTE((packed)); struct val_labs_iterator *i; struct value_label_rec *vlr; @@ -594,11 +594,10 @@ static void write_documents (struct sfm_writer *w, const struct dictionary *d) { struct - { - int32_t rec_type P; /* Always 6. */ - int32_t n_lines P; /* Number of lines of documents. */ - } - rec_6; + { + int32_t rec_type ; /* Always 6. */ + int32_t n_lines ; /* Number of lines of documents. */ + } ATTRIBUTE((packed)) rec_6; const char *documents; size_t n_lines; @@ -621,11 +620,11 @@ write_variable_display_parameters (struct sfm_writer *w, struct { - int32_t rec_type P; - int32_t subtype P; - int32_t elem_size P; - int32_t n_elem P; - } vdp_hdr; + int32_t rec_type ; + int32_t subtype ; + int32_t elem_size ; + int32_t n_elem ; + } ATTRIBUTE((packed)) vdp_hdr; vdp_hdr.rec_type = 7; vdp_hdr.subtype = 11; @@ -639,11 +638,10 @@ write_variable_display_parameters (struct sfm_writer *w, struct variable *v; struct { - int32_t measure P; - int32_t width P; - int32_t align P; - } - params; + int32_t measure ; + int32_t width ; + int32_t align ; + } ATTRIBUTE((packed)) params; v = dict_get_var(dict, i); @@ -676,17 +674,16 @@ write_vls_length_table (struct sfm_writer *w, { int i; struct - { - int32_t rec_type P; - int32_t subtype P; - int32_t elem_size P; - int32_t n_elem P; - } - vls_hdr; + { + int32_t rec_type ; + int32_t subtype ; + int32_t elem_size ; + int32_t n_elem ; + } ATTRIBUTE((packed)) vls_hdr; struct string vls_length_map; - ds_init (&vls_length_map, 12 * dict_get_var_cnt (dict)); + ds_init_empty (&vls_length_map); vls_hdr.rec_type = 7; vls_hdr.subtype = 14; @@ -700,9 +697,9 @@ write_vls_length_table (struct sfm_writer *w, if ( v->width <= MAX_LONG_STRING ) continue; - ds_printf (&vls_length_map, "%s=%05d", v->short_name, v->width); - ds_putc (&vls_length_map, '\0'); - ds_putc (&vls_length_map, '\t'); + ds_put_format (&vls_length_map, "%s=%05d", v->short_name, v->width); + ds_put_char (&vls_length_map, '\0'); + ds_put_char (&vls_length_map, '\t'); } vls_hdr.n_elem = ds_length (&vls_length_map); @@ -722,24 +719,23 @@ write_longvar_table (struct sfm_writer *w, const struct dictionary *dict) { struct { - int32_t rec_type P; - int32_t subtype P; - int32_t elem_size P; - int32_t n_elem P; - } - lv_hdr; + int32_t rec_type ; + int32_t subtype ; + int32_t elem_size ; + int32_t n_elem ; + } ATTRIBUTE((packed)) lv_hdr; struct string long_name_map; size_t i; - ds_init (&long_name_map, 10 * dict_get_var_cnt (dict)); + ds_init_empty (&long_name_map); for (i = 0; i < dict_get_var_cnt (dict); i++) { struct variable *v = dict_get_var (dict, i); if (i) - ds_putc (&long_name_map, '\t'); - ds_printf (&long_name_map, "%s=%s", v->short_name, v->name); + ds_put_char (&long_name_map, '\t'); + ds_put_format (&long_name_map, "%s=%s", v->short_name, v->name); } lv_hdr.rec_type = 7; @@ -759,18 +755,17 @@ write_rec_7_34 (struct sfm_writer *w) { struct { - int32_t rec_type_3 P; - int32_t subtype_3 P; - int32_t data_type_3 P; - int32_t n_elem_3 P; - int32_t elem_3[8] P; - int32_t rec_type_4 P; - int32_t subtype_4 P; - int32_t data_type_4 P; - int32_t n_elem_4 P; - flt64 elem_4[3] P; - } - rec_7; + int32_t rec_type_3 ; + int32_t subtype_3 ; + int32_t data_type_3 ; + int32_t n_elem_3 ; + int32_t elem_3[8] ; + int32_t rec_type_4 ; + int32_t subtype_4 ; + int32_t data_type_4 ; + int32_t n_elem_4 ; + flt64 elem_4[3] ; + } ATTRIBUTE((packed)) rec_7; /* Components of the version number, from major to minor. */ int version_component[3];