This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch, libfortran] PR 23815: Unformatted data conversion via environment variablen


Here is a new version of the patch.

Apart from specifying data representation via environment variables, this
version also supports a compile-time flag.

Regression-tested on i686-pc-linux-gnu.  Documentation checked with "make dvi".

OK?

2005-01-22  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/23815
	gfortran.texi: Document the GFORTRAN_CONVERT_UNIT environment
	variable.
	invoke.texi:  Mention the "Runtime" chapter.
	Document the -fconvert= option.
	gfortran.h:  Add options_convert.
	lang.opt:  Add fconvert=little-endian, fconvert=big-endian,
	fconvert=native and fconvert=swap.
	trans-decl.c (top level):  Add gfor_fndecl_set_convert.
	gfc_build_builtin_function_decls:  Set gfor_fndecl_set_convert.
	gfc_generate_function_code:  If -fconvert was specified,
	and this is the main program, add a call to set_convert().
	options.c:  Handle the -fconvert options.

2005-01-22  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/23815
	runtime/environ.c (init_unformatted):  Add GFORTRAN_CONVERT_UNIT
	environment variable.
	(top level):  Add defines, type and static variables for
	GFORTRAN_CONVERT_UNIT handling.
	(search_unit):  New function.
	(match_word): New function.
	(match_integer): New function.
	(next_token): New function.
	(push_token): New function.
	(mark_single): New function.
	(mark_range): New funciton.
	(do_parse): New function.
	(init_unformatted): New function.
	(get_unformatted_convert): New function.
	runtime/compile_options.c:  Add set_convert().
	libgfortran.h:  Add convert to compile_options_t.
	io/open.c (st_open): Call get_unformatted_convert to get
	unit default; if CONVERT_NONE is returned, check for
	the presence of a CONVERT specifier and use it.
	As default, use compile_options.convert.
	io/io.h (top level): Add CONVERT_NONE to unit_convert, to signal
	"nothing has been set".
	(top level): Add prototype for get_unformatted_convert.

2005-01-22  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/23815
	unf_io_convert_4.f90:  New test.

Attachment: env-6.diff
Description: Text document

Attachment: unf_io_convert_4.f90
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]