X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=src%2Fmodify-vars.c;h=fee6d59b840f92afdff88c1a877dc0a15cfc0a6e;hb=a1c8f6fe2935432af4dbe30aef2434c6ad437a56;hp=ac7d446dcd4e8b363b72041439f93569975fc5ac;hpb=3a7fba81ceae5b049d0f7d671e9e3c3c43bbf703;p=pspp diff --git a/src/modify-vars.c b/src/modify-vars.c index ac7d446dcd..fee6d59b84 100644 --- a/src/modify-vars.c +++ b/src/modify-vars.c @@ -14,33 +14,17 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - 02111-1307, USA. */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301, USA. */ -/* AIX requires this to be the first thing in the file. */ #include -#if __GNUC__ -#define alloca __builtin_alloca -#else -#if HAVE_ALLOCA_H -#include -#else -#ifdef _AIX -#pragma alloca -#else -#ifndef alloca /* predefined by HP cc +Olibcalls */ -char *alloca (); -#endif -#endif -#endif -#endif - #include -#include +#include "error.h" #include "algorithm.h" #include "alloc.h" #include "bitvector.h" #include "command.h" +#include "dictionary.h" #include "error.h" #include "hash.h" #include "lexer.h" @@ -100,8 +84,12 @@ cmd_modify_vars (void) size_t i; - lex_match_id ("MODIFY"); - lex_match_id ("VARS"); + if (temporary != 0) + { + msg (SE, _("MODIFY VARS may not be used after TEMPORARY. " + "Temporary transformations will be made permanent.")); + cancel_temporary (); + } vm.reorder_vars = NULL; vm.reorder_cnt = 0; @@ -326,7 +314,7 @@ cmd_modify_vars (void) if (already_encountered & (1 | 4)) { /* Read the data. */ - procedure (NULL, NULL, NULL); + procedure (NULL, NULL); } if (!rearrange_dict (default_dict, &vm)) @@ -360,7 +348,7 @@ compare_variables_given_ordering (const void *a_, const void *b_, if (ordering->positional) result = a->index < b->index ? -1 : a->index > b->index; else - result = strcmp (a->name, b->name); + result = strcasecmp (a->name, b->name); if (!ordering->forward) result = -result; return result; @@ -370,19 +358,19 @@ compare_variables_given_ordering (const void *a_, const void *b_, struct var_renaming { struct variable *var; - char new_name[9]; + char new_name[LONG_NAME_LEN + 1]; }; /* A algo_compare_func that compares new_name members in struct var_renaming structures A and B. */ static int compare_var_renaming_by_new_name (const void *a_, const void *b_, - void *foo unused) + void *foo UNUSED) { const struct var_renaming *a = a_; const struct var_renaming *b = b_; - return strcmp (a->new_name, b->new_name); + return strcasecmp (a->new_name, b->new_name); } /* Returns true if performing VM on dictionary D would not cause