X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=inline;f=src%2Flanguage%2Fdata-io%2Ffile-handle.q;h=c29a5fedd0374d011355fe0306bbfe1a6849aadf;hb=a46ed36dcbab01d36c08cf560ff96a7effd9779a;hp=35fabc08842a25dc79453f3597853ded2df2620f;hpb=d0371553a98cd169353bf6d211e375e5ffc3a3bd;p=pspp-builds.git
diff --git a/src/language/data-io/file-handle.q b/src/language/data-io/file-handle.q
index 35fabc08..c29a5fed 100644
--- a/src/language/data-io/file-handle.q
+++ b/src/language/data-io/file-handle.q
@@ -15,12 +15,13 @@
along with this program. If not, see . */
#include
-#include
-#include
+
+#include
#include
#include
#include
#include
+#include
#include
#include
#include
@@ -50,7 +51,7 @@
int
cmd_file_handle (struct lexer *lexer, struct dataset *ds)
{
- char handle_name[LONG_NAME_LEN + 1];
+ char handle_name[VAR_NAME_LEN + 1];
struct cmd_file_handle cmd;
struct file_handle *handle;
@@ -101,7 +102,7 @@ cmd_file_handle (struct lexer *lexer, struct dataset *ds)
properties.mode = FH_MODE_VARIABLE;
break;
case FH_360:
- properties.encoding = LEGACY_EBCDIC;
+ properties.encoding = "EBCDIC-US";
if (cmd.recform == FH_FIXED || cmd.recform == FH_F)
properties.mode = FH_MODE_FIXED;
else if (cmd.recform == FH_VARIABLE || cmd.recform == FH_V)
@@ -128,7 +129,7 @@ cmd_file_handle (struct lexer *lexer, struct dataset *ds)
{
if (cmd.n_lrecl[0] == LONG_MIN)
msg (SE, _("The specified file mode requires LRECL. "
- "Assuming %d-character records."),
+ "Assuming %zu-character records."),
properties.record_width);
else if (cmd.n_lrecl[0] < 1 || cmd.n_lrecl[0] >= (1UL << 31))
msg (SE, _("Record length (%ld) must be between 1 and %lu bytes. "
@@ -199,7 +200,7 @@ fh_parse (struct lexer *lexer, enum fh_referent referent_mask)
handle = fh_inline_file ();
else
{
- if (lex_token (lexer) != T_ID && lex_token (lexer) != T_STRING)
+ if (lex_token (lexer) != T_ID && !lex_is_string (lexer))
{
lex_error (lexer, _("expecting a file name or handle name"));
return NULL;
@@ -210,7 +211,7 @@ fh_parse (struct lexer *lexer, enum fh_referent referent_mask)
handle = fh_from_id (lex_tokid (lexer));
if (handle == NULL)
{
- if (lex_token (lexer) != T_ID || lex_tokid (lexer)[0] != '#' || get_syntax () != ENHANCED)
+ if (lex_token (lexer) != T_ID || lex_tokid (lexer)[0] != '#' || settings_get_syntax () != ENHANCED)
handle = fh_create_file (NULL, ds_cstr (lex_tokstr (lexer)),
fh_default_properties ());
else