gcc/libgfortran
Richard Sandiford ec25720ba3 re PR fortran/12840 ([4.0 only] Unable to find scalarization loop specifier)
PR fortran/12840
	* trans.h (gfor_fndecl_internal_realloc): Declare.
	(gfor_fndecl_internal_realloc64): Declare.
	* trans-decl.c (gfor_fndecl_internal_realloc): New variable.
	(gfor_fndecl_internal_realloc64): New variable.
	(gfc_build_builtin_function_decls): Initialize them.
	* trans-array.h (gfc_trans_allocate_temp_array): Add a fourth argument.
	* trans-array.c (gfc_trans_allocate_array_storage): Add an argument
	to say whether the array can grow later.  Don't allocate the array
	on the stack if so.  Don't call malloc for zero-sized arrays.
	(gfc_trans_allocate_temp_array): Add a similar argument here.
	Pass it along to gfc_trans_allocate_array_storage.
	(gfc_get_iteration_count, gfc_grow_array): New functions.
	(gfc_iterator_has_dynamic_bounds): New function.
	(gfc_get_array_constructor_element_size): New function.
	(gfc_get_array_constructor_size): New function.
	(gfc_trans_array_ctor_element): Replace pointer argument with
	a descriptor tree.
	(gfc_trans_array_constructor_subarray): Likewise.  Take an extra
	argument to say whether the variable-sized part of the constructor
	must be allocated using realloc.  Grow the array when this
	argument is true.
	(gfc_trans_array_constructor_value): Likewise.
	(gfc_get_array_cons_size): Delete.
	(gfc_trans_array_constructor): If the loop bound has not been set,
	split the allocation into a static part and a dynamic part.  Set
	loop->to to the bounds for static part before allocating the
	temporary.  Adjust call to gfc_trans_array_constructor_value.
	(gfc_conv_loop_setup): Allow any constructor to determine the
	loop bounds.  Check whether the constructor has a dynamic size
	and prefer to use something else if so.  Expect the loop bound
	to be set later.  Adjust call to gfc_trans_allocate_temp_array.
	* trans-expr.c (gfc_conv_function_call): Adjust another call here.

From-SVN: r104073
2005-09-09 06:00:40 +00:00
..
generated All files: Update FSF address. 2005-08-17 02:49:08 +00:00
intrinsics All files: Update FSF address. 2005-08-17 02:49:08 +00:00
io re PR libfortran/23262 ([mingw32] rewind truncates file) 2005-09-07 21:25:40 +00:00
m4 All files: Update FSF address. 2005-08-17 02:49:08 +00:00
runtime re PR fortran/12840 ([4.0 only] Unable to find scalarization loop specifier) 2005-09-09 06:00:40 +00:00
.cvsignore ignore autom4te.cache 2004-08-23 23:51:56 +00:00
ChangeLog re PR fortran/12840 ([4.0 only] Unable to find scalarization loop specifier) 2005-09-09 06:00:40 +00:00
Makefile.am re PR libfortran/20006 ($ format extension doesn't work) 2005-08-11 13:50:13 +00:00
Makefile.in acinclude.m4 (LIBGFOR_CHECK_UNLINK_OPEN_FILE): Add check to see if target can unlink open files. 2005-08-27 16:01:54 +00:00
acinclude.m4 re PR libfortran/23262 ([mingw32] rewind truncates file) 2005-09-07 21:25:40 +00:00
aclocal.m4 acinclude.m4 (LIBGFOR_CHECK_UNLINK_OPEN_FILE): Add check to see if target can unlink open files. 2005-08-27 16:01:54 +00:00
c99_protos.h All files: Update FSF address. 2005-08-17 02:49:08 +00:00
config.h.in re PR libfortran/23262 ([mingw32] rewind truncates file) 2005-09-07 21:25:40 +00:00
configure re PR libfortran/23262 ([mingw32] rewind truncates file) 2005-09-07 21:25:40 +00:00
configure.ac re PR libfortran/23262 ([mingw32] rewind truncates file) 2005-09-07 21:25:40 +00:00
fmain.c
libgfortran.h libgfortran.h: Add prototype for init_compile_options. 2005-09-02 15:29:53 +02:00
libtool-version libtool-version: New. 2004-07-04 09:06:54 +00:00
mk-kinds-h.sh c99_functions.c (log10l): New log10l function for systems where this is not available. 2005-06-23 18:50:25 +00:00
mk-sik-inc.sh mk-sik-inc.sh: Use a temporary string instead of 'echo -n'. 2004-09-01 17:51:42 +00:00
mk-srk-inc.sh mk-sik-inc.sh: Use a temporary string instead of 'echo -n'. 2004-09-01 17:51:42 +00:00