This is the mail archive of the gcc-bugs@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]

[Bug fortran/54730] [4.6/4.7/4.8 Regression] ICE in gfc_typenode_for_spec, at fortran/trans-types.c:1066


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54730

--- Comment #12 from Mikael Morin <mikael at gcc dot gnu.org> 2013-03-03 17:34:48 UTC ---
Author: mikael
Date: Sun Mar  3 17:34:42 2013
New Revision: 196414

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=196414
Log:
fortran/
    PR fortran/54730
    * gfortran.h (struct gfc_undo_change_set): New field 'previous'.
    (gfc_new_undo_checkpoint, gfc_drop_last_undo_checkpoint,
    gfc_restore_last_undo_checkpoint): New prototypes.
    * symbol.c (default_undo_chgset_var): Update initialization.
    (single_undo_checkpoint_p, gfc_new_undo_checkpoint,
    free_undo_change_set_data, pop_undo_change_set,
    gfc_drop_last_undo_checkpoint, enforce_single_undo_checkpoint):
    New functions.
    (save_symbol_data): Handle multiple change sets.  Make sure old_symbol
    field's previous value is not overwritten.  Clear gfc_new field.
    (restore_old_symbol): Restore previous old_symbol field.
    (gfc_restore_last_undo_checkpoint): New function, using body renamed
    from gfc_undo_symbols.  Restore the previous change set as current one.
    (gfc_undo_symbols): New body.
    (gfc_commit_symbols, gfc_commit_symbol, gfc_enforce_clean_symbol_state):
    Call enforce_single_undo_checkpoint.
    (gfc_symbol_done_2): Ditto.  Free change set data.


Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/gfortran.h
    trunk/gcc/fortran/symbol.c


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