Many of the invocations of lex_error() were easy to rephrase to be more
easily translated, or to rewrite as calls to other functions.
---
src/language/data-io/get-data.c | 2 +-
src/language/dictionary/attributes.c | 2 +-
src/language/dictionary/missing-values.c | 7 ++-----
src/language/expressions/parse.c | 7 ++-----
src/language/stats/aggregate.c | 19 +++++++------------
src/language/stats/crosstabs.q | 16 ++++------------
src/language/utilities/include.c | 10 ++++++----
7 files changed, 23 insertions(+), 40 deletions(-)
diff --git a/src/language/data-io/get-data.c b/src/language/data-io/get-data.c
index c00baa5..94fadd6 100644
--- a/src/language/data-io/get-data.c
+++ b/src/language/data-io/get-data.c
@@ -458,7 +458,7 @@ parse_get_txt (struct lexer *lexer, struct dataset *ds)
break;
else
{
- lex_error (lexer, _("expecting VARIABLES"));
+ lex_error (lexer, _("expecting %s"), "VARIABLES");
goto error;
}
}
diff --git a/src/language/dictionary/attributes.c
b/src/language/dictionary/attributes.c
index 9e9b808..ee309ae 100644
--- a/src/language/dictionary/attributes.c
+++ b/src/language/dictionary/attributes.c
@@ -186,7 +186,7 @@ parse_attributes (struct lexer *lexer, struct attrset
**sets, size_t n)
command = DELETE;
else if (command == UNKNOWN)
{
- lex_error (lexer, _("expecting ATTRIBUTE= or DELETE="));
+ lex_error (lexer, _("expecting %s or %s"), "ATTRIBUTE=", "DELETE=");
return CMD_FAILURE;
}
diff --git a/src/language/dictionary/missing-values.c
b/src/language/dictionary/missing-values.c
index 22fe443..912c58c 100644
--- a/src/language/dictionary/missing-values.c
+++ b/src/language/dictionary/missing-values.c
@@ -51,11 +51,8 @@ cmd_missing_values (struct lexer *lexer, struct dataset *ds)
if (!parse_variables (lexer, dataset_dict (ds), &v, &nv, PV_NONE))
goto done;
- if (!lex_match (lexer, '('))
- {
- lex_error (lexer, _("expecting `('"));
- goto done;
- }
+ if (!lex_force_match (lexer, '('))
+ goto done;
for (i = 0; i < nv; i++)
var_clear_missing_values (v[i]);
diff --git a/src/language/expressions/parse.c b/src/language/expressions/parse.c
index f9461f1..7e093df 100644
--- a/src/language/expressions/parse.c
+++ b/src/language/expressions/parse.c
@@ -886,11 +886,8 @@ parse_primary (struct lexer *lexer, struct expression *e)
union any_node *node;
lex_get (lexer);
node = parse_or (lexer, e);
- if (node != NULL && !lex_match (lexer, ')'))
- {
- lex_error (lexer, _("expecting `)'"));
- return NULL;
- }
+ if (node != NULL && !lex_force_match (lexer, ')'))
+ return NULL;
return node;
}
diff --git a/src/language/stats/aggregate.c b/src/language/stats/aggregate.c
index 15376f6..50a98e4 100644
--- a/src/language/stats/aggregate.c
+++ b/src/language/stats/aggregate.c
@@ -222,7 +222,7 @@ cmd_aggregate (struct lexer *lexer, struct dataset *ds)
lex_match (lexer, '=');
if (!lex_match_id (lexer, "COLUMNWISE"))
{
- lex_error (lexer, _("while expecting COLUMNWISE"));
+ lex_error (lexer, _("expecting %s"), "COLUMNWISE");
goto error;
}
agr.missing = COLUMNWISE;
@@ -231,7 +231,7 @@ cmd_aggregate (struct lexer *lexer, struct dataset *ds)
copy_documents = true;
else if (lex_match_id (lexer, "PRESORTED"))
presorted = true;
- else if (lex_match_id (lexer, "BREAK"))
+ else if (lex_force_match_id (lexer, "BREAK"))
{
int i;
@@ -249,10 +249,8 @@ cmd_aggregate (struct lexer *lexer, struct dataset *ds)
break;
}
else
- {
- lex_error (lexer, _("expecting BREAK"));
- goto error;
- }
+ goto error;
+
}
if (presorted && saw_direction)
msg (SW, _("When PRESORTED is specified, specifying sorting directions "
@@ -474,7 +472,7 @@ parse_aggregate_functions (struct lexer *lexer, const
struct dictionary *dict,
{
if (function->src_vars == AGR_SV_YES)
{
- lex_error (lexer, _("expecting `('"));
+ lex_force_match (lexer, '(');
goto error;
}
}
@@ -530,11 +528,8 @@ parse_aggregate_functions (struct lexer *lexer, const
struct dictionary *dict,
}
/* Trailing rparen. */
- if (!lex_match (lexer, ')'))
- {
- lex_error (lexer, _("expecting `)'"));
- goto error;
- }
+ if (!lex_force_match (lexer, ')'))
+ goto error;
/* Now check that the number of source variables match
the number of target variables. If we check earlier
diff --git a/src/language/stats/crosstabs.q b/src/language/stats/crosstabs.q
index f75e249..341a920 100644
--- a/src/language/stats/crosstabs.q
+++ b/src/language/stats/crosstabs.q
@@ -406,7 +406,7 @@ crs_custom_tables (struct lexer *lexer, struct dataset *ds,
{
if (n_by < 2)
{
- lex_error (lexer, _("expecting BY"));
+ lex_force_match (lexer, T_BY);
goto done;
}
else
@@ -482,12 +482,8 @@ crs_custom_variables (struct lexer *lexer, struct dataset
*ds,
| PV_NO_DUPLICATE | PV_NO_SCRATCH)))
return 0;
- if (lex_token (lexer) != '(')
- {
- lex_error (lexer, "expecting `('");
+ if (!lex_force_match (lexer, '('))
goto lossage;
- }
- lex_get (lexer);
if (!lex_force_int (lexer))
goto lossage;
@@ -507,12 +503,8 @@ crs_custom_variables (struct lexer *lexer, struct dataset
*ds,
}
lex_get (lexer);
- if (lex_token (lexer) != ')')
- {
- lex_error (lexer, "expecting `)'");
- goto lossage;
- }
- lex_get (lexer);
+ if (!lex_force_match (lexer, ')'))
+ goto lossage;
for (i = orig_nv; i < proc->n_variables; i++)
{
diff --git a/src/language/utilities/include.c b/src/language/utilities/include.c
index ceb7877..59728ad 100644
--- a/src/language/utilities/include.c
+++ b/src/language/utilities/include.c
@@ -91,8 +91,8 @@ cmd_insert (struct lexer *lexer, struct dataset *ds UNUSED)
syntax_mode = GETL_BATCH;
else
{
- lex_error(lexer,
- _("Expecting BATCH or INTERACTIVE after SYNTAX."));
+ lex_error (lexer, _("expecting %s or %s after %s"),
+ "BATCH", "INTERACTIVE", "SYNTAX");
return CMD_FAILURE;
}
}
@@ -109,7 +109,8 @@ cmd_insert (struct lexer *lexer, struct dataset *ds UNUSED)
}
else
{
- lex_error (lexer, _("Expecting YES or NO after CD."));
+ lex_error (lexer, _("expecting %s or %s after %s"),
+ "YES", "NO", "CD");
return CMD_FAILURE;
}
}
@@ -126,7 +127,8 @@ cmd_insert (struct lexer *lexer, struct dataset *ds UNUSED)
}
else
{
- lex_error (lexer, _("Expecting CONTINUE or STOP after ERROR."));
+ lex_error (lexer, _("expecting %s or %s after %s"),
+ "CONTINUE", "STOP", "ERROR");
return CMD_FAILURE;
}
}
--
1.7.1
_______________________________________________
pspp-dev mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/pspp-dev