+2010-08-07 Nathan Froyd <froydnj@codesourcery.com>
+
+ * interface.c (compare_actual_formal): Use XALLOCAVEC instead of
+ alloca.
+ (check_some_aliasing): Likewise.
+ * trans-intrinsic.c (gfc_conv_intrinsic_conversion): Likewise.
+ (gfc_conv_intrinsic_int): Likewise.
+ (gfc_conv_intrinsic_lib_function): Likewise.
+ (gfc_conv_intrinsic_cmplx): Likewise.
+ (gfc_conv_intrinsic_ctime): Likewise.
+ (gfc_conv_intrinsic_fdate): Likewise.
+ (gfc_conv_intrinsic_ttynam): Likewise.
+ (gfc_conv_intrinsic_minmax): Likewise.
+ (gfc_conv_intrinsic_minmax_char): Likewise.
+ (gfc_conv_intrinsic_ishftc): Likewise.
+ (gfc_conv_intrinsic_index_scan_verify): Likewise.
+ (gfc_conv_intrinsic_merge): Likewise.
+ (gfc_conv_intrinsic_trim): Likewise.
+ * trans.c (gfc_trans_runtime_error_vararg): Likewise.
+
2010-08-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45159
int nargs;
nargs = gfc_intrinsic_argument_list_length (expr);
- args = (tree *) alloca (sizeof (tree) * nargs);
+ args = XALLOCAVEC (tree, nargs);
/* Evaluate all the arguments passed. Whilst we're only interested in the
first one here, there are other parts of the front-end that assume this
int nargs;
nargs = gfc_intrinsic_argument_list_length (expr);
- args = (tree *) alloca (sizeof (tree) * nargs);
+ args = XALLOCAVEC (tree, nargs);
/* Evaluate the argument, we process all arguments even though we only
use the first one for code generation purposes. */
/* Get the decl and generate the call. */
num_args = gfc_intrinsic_argument_list_length (expr);
- args = (tree *) alloca (sizeof (tree) * num_args);
+ args = XALLOCAVEC (tree, num_args);
gfc_conv_intrinsic_function_args (se, expr, args, num_args);
fndecl = gfc_get_intrinsic_lib_fndecl (m, expr);
unsigned int num_args;
num_args = gfc_intrinsic_argument_list_length (expr);
- args = (tree *) alloca (sizeof (tree) * num_args);
+ args = XALLOCAVEC (tree, num_args);
type = gfc_typenode_for_spec (&expr->ts);
gfc_conv_intrinsic_function_args (se, expr, args, num_args);
unsigned int num_args;
num_args = gfc_intrinsic_argument_list_length (expr) + 2;
- args = (tree *) alloca (sizeof (tree) * num_args);
+ args = XALLOCAVEC (tree, num_args);
var = gfc_create_var (pchar_type_node, "pstr");
len = gfc_create_var (gfc_get_int_type (8), "len");
unsigned int num_args;
num_args = gfc_intrinsic_argument_list_length (expr) + 2;
- args = (tree *) alloca (sizeof (tree) * num_args);
+ args = XALLOCAVEC (tree, num_args);
var = gfc_create_var (pchar_type_node, "pstr");
len = gfc_create_var (gfc_charlen_type_node, "len");
unsigned int num_args;
num_args = gfc_intrinsic_argument_list_length (expr) + 2;
- args = (tree *) alloca (sizeof (tree) * num_args);
+ args = XALLOCAVEC (tree, num_args);
var = gfc_create_var (pchar_type_node, "pstr");
len = gfc_create_var (gfc_charlen_type_node, "len");
unsigned int i, nargs;
nargs = gfc_intrinsic_argument_list_length (expr);
- args = (tree *) alloca (sizeof (tree) * nargs);
+ args = XALLOCAVEC (tree, nargs);
gfc_conv_intrinsic_function_args (se, expr, args, nargs);
type = gfc_typenode_for_spec (&expr->ts);
unsigned int nargs;
nargs = gfc_intrinsic_argument_list_length (expr);
- args = (tree *) alloca (sizeof (tree) * (nargs + 4));
+ args = XALLOCAVEC (tree, nargs + 4);
gfc_conv_intrinsic_function_args (se, expr, &args[4], nargs);
/* Create the result variables. */
unsigned int num_args;
num_args = gfc_intrinsic_argument_list_length (expr);
- args = (tree *) alloca (sizeof (tree) * num_args);
+ args = XALLOCAVEC (tree, num_args);
gfc_conv_intrinsic_function_args (se, expr, args, num_args);
tree *args;
unsigned int num_args;
- args = (tree *) alloca (sizeof (tree) * 5);
+ args = XALLOCAVEC (tree, 5);
/* Get number of arguments; characters count double due to the
string length argument. Kind= is not passed to the library
unsigned int num_args;
num_args = gfc_intrinsic_argument_list_length (expr);
- args = (tree *) alloca (sizeof (tree) * num_args);
+ args = XALLOCAVEC (tree, num_args);
gfc_conv_intrinsic_function_args (se, expr, args, num_args);
if (expr->ts.type != BT_CHARACTER)
unsigned int num_args;
num_args = gfc_intrinsic_argument_list_length (expr) + 2;
- args = (tree *) alloca (sizeof (tree) * num_args);
+ args = XALLOCAVEC (tree, num_args);
var = gfc_create_var (gfc_get_pchar_type (expr->ts.kind), "pstr");
addr = gfc_build_addr_expr (ppvoid_type_node, var);