diff options
Diffstat (limited to 'libgfortran/runtime/environ.c')
-rw-r--r-- | libgfortran/runtime/environ.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/libgfortran/runtime/environ.c b/libgfortran/runtime/environ.c index c9c1e27..388383c 100644 --- a/libgfortran/runtime/environ.c +++ b/libgfortran/runtime/environ.c @@ -868,14 +868,13 @@ mark_range (int unit1, int unit2) static int do_parse (void) { - int tok, def; + int tok; int unit1; int continue_ulist; char *start; unit_count = 0; - def = 0; start = p; /* Parse the string. First, let's look for a default. */ @@ -930,6 +929,7 @@ do_parse (void) break; case END: + def = endian; goto end; break; @@ -946,6 +946,18 @@ do_parse (void) tok = next_token (); switch (tok) { + case NATIVE: + if (next_token () != ':') + goto error; + endian = CONVERT_NATIVE; + break; + + case SWAP: + if (next_token () != ':') + goto error; + endian = CONVERT_SWAP; + break; + case LITTLE: if (next_token () != ':') goto error; |