Patchwork [libgfortran] Committed as obvious

login
register
mail settings
Submitter jerry DeLisle
Date March 21, 2014, 10:24 p.m.
Message ID <532CBC08.9070901@charter.net>
Download mbox | patch
Permalink /patch/332774/
State New
Headers show

Comments

jerry DeLisle - March 21, 2014, 10:24 p.m.
Committed revision 208759.


If std= was used at compile time for std=f95, f2003, f2008, set the default
delimiter to 'NONE' if not otherwise specified.

2014-03-21  Jerry DeLisle  <jvdelisle@gcc.gnu>

	PR libfortran/60148
	* io/transfer.c (data_transfer_init): If std= was specified, set
	delim status to DELIM_NONE of no other was specified.
Tobias Burnus - March 22, 2014, 2:35 p.m.
Can you add some documentation to gfortran.texi. I think we need to make 
clear that for library extension, the flag used for compiling the main 
program is relevant. Additionally, I believe some of the extensions are 
always on while others are only enabled with a flag - if so, I think we 
should make the distinction clearer.

Tobias

Jerry DeLisle wrote:
> Committed revision 208759.
>
> Index: io/transfer.c
> ===================================================================
> --- io/transfer.c	(revision 208755)
> +++ io/transfer.c	(working copy)
> @@ -2674,7 +2674,8 @@ data_transfer_init (st_parameter_dt *dtp, int read
>     if (dtp->u.p.current_unit->delim_status == DELIM_UNSPECIFIED)
>       {
>         if (ionml && dtp->u.p.current_unit->flags.delim == DELIM_UNSPECIFIED)
> -	dtp->u.p.current_unit->delim_status = DELIM_QUOTE;
> +	dtp->u.p.current_unit->delim_status =
> +	  compile_options.allow_std & GFC_STD_GNU ? DELIM_QUOTE : DELIM_NONE;
>         else
>   	dtp->u.p.current_unit->delim_status = dtp->u.p.current_unit->flags.delim;
>       }
>
> If std= was used at compile time for std=f95, f2003, f2008, set the default
> delimiter to 'NONE' if not otherwise specified.
>
> 2014-03-21  Jerry DeLisle  <jvdelisle@gcc.gnu>
>
> 	PR libfortran/60148
> 	* io/transfer.c (data_transfer_init): If std= was specified, set
> 	delim status to DELIM_NONE of no other was specified.
>

Patch

Index: io/transfer.c
===================================================================
--- io/transfer.c	(revision 208755)
+++ io/transfer.c	(working copy)
@@ -2674,7 +2674,8 @@  data_transfer_init (st_parameter_dt *dtp, int read
   if (dtp->u.p.current_unit->delim_status == DELIM_UNSPECIFIED)
     {
       if (ionml && dtp->u.p.current_unit->flags.delim == DELIM_UNSPECIFIED)
-	dtp->u.p.current_unit->delim_status = DELIM_QUOTE;
+	dtp->u.p.current_unit->delim_status =
+	  compile_options.allow_std & GFC_STD_GNU ? DELIM_QUOTE : DELIM_NONE;
       else
 	dtp->u.p.current_unit->delim_status = dtp->u.p.current_unit->flags.delim;
     }