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: [fortran, patch] Patch for PR18827



On Feb 22, 2005, at 2:48 AM, Feng Wang wrote:


This patch fix pr18827. Allows variables in a common block to be assigned a
label. And do not set symbol's assign attribute when match assigned goto
statement and i/o statements using label assigned variable. We should set it
only when match assign statment. And add checking this attribute when
resolving.


But this patch reveals another bug of the backend. The backend will remove the
label unless we set !DECL_ARTIFICIAL flag on assigned label, even we set
TREE_ADDRESSABLE flag and !DECL_IGNORED_P and FORCED_LABEL flag. After
discussion with Steven, we reserve the setting of !DECL_ARTIFICIAL on assigned
label to fix pr18827. And after committing this patch, I will file a BE bug
reporting.

The tree optimization bug is tree-cfg.c around line 5799 in cleanup_dead_labels.

It should also be checking FORCED_LABEL.

-- Pinski


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