re PR fortran/79335 (Conditional jump or move depends on uninitialised in value get_scalar_to_descriptor_type(tree_node*, symbol_attribute) (trans-expr.c:53))
gcc/fortran/ChangeLog: 2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org> PR fortran/79335 * trans-decl.c (generate_coarray_sym_init): Retrieve the symbol's attributes before using them. From-SVN: r245193
This commit is contained in:
parent
764d5c7b53
commit
ea06c7b0c4
@ -1,3 +1,9 @@
|
||||
2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org>
|
||||
|
||||
PR fortran/79335
|
||||
* trans-decl.c (generate_coarray_sym_init): Retrieve the symbol's
|
||||
attributes before using them.
|
||||
|
||||
2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org>
|
||||
|
||||
PR fortran/78958
|
||||
|
@ -5128,6 +5128,16 @@ generate_coarray_sym_init (gfc_symbol *sym)
|
||||
else
|
||||
reg_type = GFC_CAF_COARRAY_STATIC;
|
||||
|
||||
/* Compile the symbol attribute. */
|
||||
if (sym->ts.type == BT_CLASS)
|
||||
{
|
||||
attr = CLASS_DATA (sym)->attr;
|
||||
/* The pointer attribute is always set on classes, overwrite it with the
|
||||
class_pointer attribute, which denotes the pointer for classes. */
|
||||
attr.pointer = attr.class_pointer;
|
||||
}
|
||||
else
|
||||
attr = sym->attr;
|
||||
gfc_init_se (&se, NULL);
|
||||
desc = gfc_conv_scalar_to_descriptor (&se, decl, attr);
|
||||
gfc_add_block_to_block (&caf_init_block, &se.pre);
|
||||
|
Loading…
Reference in New Issue
Block a user