projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
LIST: Improve wording of error messages.
[pspp]
/
src
/
language
/
data-io
/
list.c
diff --git
a/src/language/data-io/list.c
b/src/language/data-io/list.c
index 90564e7a137c3d774ea3e1945674b08e05bb2bcd..e9e0e326c2234b5f823e1d0fc7fa29dac894bd42 100644
(file)
--- a/
src/language/data-io/list.c
+++ b/
src/language/data-io/list.c
@@
-1,5
+1,5
@@
/* PSPP - a program for statistical analysis.
/* PSPP - a program for statistical analysis.
- Copyright (C) 1997-9, 2000, 2006, 2009-2011, 2013 Free Software Foundation, Inc.
+ Copyright (C) 1997-9, 2000, 2006, 2009-2011, 2013
, 2014, 2016
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
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
@@
-56,10
+56,10
@@
enum numbering
struct lst_cmd
{
struct lst_cmd
{
-
int
first;
-
int
last;
-
int
step;
- struct variable **v_variables;
+
long
first;
+
long
last;
+
long
step;
+
const
struct variable **v_variables;
size_t n_variables;
enum numbering numbering;
};
size_t n_variables;
enum numbering numbering;
};
@@
-128,7
+128,7
@@
list_execute (const struct lst_cmd *lcmd, struct dataset *ds)
casereader_destroy (group);
casereader_destroy (group);
- table_item_submit (table_item_create (t, "Data List"));
+ table_item_submit (table_item_create (t, "Data List"
, NULL
));
}
ok = casegrouper_destroy (grouper);
ok = proc_commit (ds) && ok;
}
ok = casegrouper_destroy (grouper);
ok = proc_commit (ds) && ok;
@@
-162,7
+162,7
@@
cmd_list (struct lexer *lexer, struct dataset *ds)
if (lex_match_id (lexer, "VARIABLES") )
{
lex_match (lexer, T_EQUALS);
if (lex_match_id (lexer, "VARIABLES") )
{
lex_match (lexer, T_EQUALS);
- if (! parse_variables (lexer, dict, &cmd.v_variables, &cmd.n_variables, 0 ))
+ if (! parse_variables
_const
(lexer, dict, &cmd.v_variables, &cmd.n_variables, 0 ))
{
msg (SE, _("No variables specified."));
return CMD_FAILURE;
{
msg (SE, _("No variables specified."));
return CMD_FAILURE;
@@
-189,31
+189,26
@@
cmd_list (struct lexer *lexer, struct dataset *ds)
else if (lex_match_id (lexer, "CASES"))
{
lex_match (lexer, T_EQUALS);
else if (lex_match_id (lexer, "CASES"))
{
lex_match (lexer, T_EQUALS);
- lex_force_match_id (lexer, "FROM");
-
- if (lex_force_int (lexer))
+ if (lex_match_id (lexer, "FROM") && lex_force_int (lexer))
{
{
- cmd.first = lex_integer (lexer);
+
cmd.first = lex_integer (lexer);
lex_get (lexer);
}
lex_get (lexer);
}
- lex_force_match (lexer, T_TO);
-
- if (lex_force_int (lexer))
+ if ((lex_match (lexer, T_TO) && lex_force_int (lexer))
+ || lex_is_integer (lexer))
{
cmd.last = lex_integer (lexer);
lex_get (lexer);
}
{
cmd.last = lex_integer (lexer);
lex_get (lexer);
}
- lex_force_match (lexer, T_BY);
-
- if (lex_force_int (lexer))
+ if (lex_match (lexer, T_BY) && lex_force_int (lexer))
{
cmd.step = lex_integer (lexer);
lex_get (lexer);
}
}
{
cmd.step = lex_integer (lexer);
lex_get (lexer);
}
}
- else if (! parse_variables (lexer, dict, &cmd.v_variables, &cmd.n_variables, 0 ))
+ else if (! parse_variables
_const
(lexer, dict, &cmd.v_variables, &cmd.n_variables, 0 ))
{
return CMD_FAILURE;
}
{
return CMD_FAILURE;
}
@@
-233,15
+228,15
@@
cmd_list (struct lexer *lexer, struct dataset *ds)
if (cmd.first < 1)
{
if (cmd.first < 1)
{
- msg (SW, _("The first case (%ld) to list is
less than 1. The value is
"
- "being reset to 1."), cmd.first);
+ msg (SW, _("The first case (%ld) to list is
numbered less than 1.
"
+ "
The value is
being reset to 1."), cmd.first);
cmd.first = 1;
}
if (cmd.last < 1)
{
cmd.first = 1;
}
if (cmd.last < 1)
{
- msg (SW, _("The last case (%ld) to list is
less than 1. The value is
"
- "being reset to 1."), cmd.last);
+ msg (SW, _("The last case (%ld) to list is
numbered less than 1.
"
+ "
The value is
being reset to 1."), cmd.last);
cmd.last = 1;
}
cmd.last = 1;
}