Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
934c6b13
Commit
934c6b13
authored
Mar 09, 1996
by
Mike Stump
Committed by
Mike Stump
Mar 09, 1996
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
85th Cygnus<->FSF quick merge
From-SVN: r11505
parent
2a888d4c
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
37 additions
and
9 deletions
+37
-9
gcc/cp/ChangeLog
+15
-0
gcc/cp/decl.c
+8
-5
gcc/cp/tree.c
+14
-4
No files found.
gcc/cp/ChangeLog
View file @
934c6b13
Fri Mar 8 11:47:26 1996 Mike Stump <mrs@cygnus.com>
* tree.c (unsave_expr): Don't unsave, UNSAVE_EXPRs.
Fri Mar 8 11:29:06 1996 Mike Stump <mrs@cygnus.com>
* decl.c (cp_finish_decl): The exception regions have to be
nested, not overlapping. We start the exception region for a
decl, after it has been fully built, and all temporaries for it
have been cleaned up.
Thu Mar 7 17:46:06 1996 Mike Stump <mrs@cygnus.com>
* tree.c (vec_binfo_member): Don't core dump if we have no bases.
Thu Mar 7 14:11:49 1996 Jason Merrill <jason@yorick.cygnus.com>
* tree.def: Add RETURN_INIT.
...
...
gcc/cp/decl.c
View file @
934c6b13
...
...
@@ -6769,7 +6769,15 @@ cp_finish_decl (decl, init, asmspec_tree, need_pop, flags)
&&
cleanup
==
NULL_TREE
&&
DECL_NAME
(
decl
))
TREE_USED
(
decl
)
=
0
;
}
/* Cleanup any temporaries needed for the initial value. */
expand_cleanups_to
(
old_cleanups
);
pop_temp_slots
();
pop_temp_slots
();
target_temp_slot_level
=
old_temp_level
;
if
(
DECL_SIZE
(
decl
)
&&
type
!=
error_mark_node
)
{
/* Store the cleanup, if there was one. */
if
(
cleanup
)
{
...
...
@@ -6778,11 +6786,6 @@ cp_finish_decl (decl, init, asmspec_tree, need_pop, flags)
decl
);
}
}
/* Cleanup any temporaries needed for the initial value. */
expand_cleanups_to
(
old_cleanups
);
pop_temp_slots
();
pop_temp_slots
();
target_temp_slot_level
=
old_temp_level
;
}
finish_end0
:
...
...
gcc/cp/tree.c
View file @
934c6b13
...
...
@@ -1761,12 +1761,19 @@ break_out_target_exprs (t)
return
mapcar
(
t
,
bot_manip
);
}
/* Arrange for an expression to be expanded multiple independent
times. This is useful for cleanup actions, as the backend can
expand them multiple times in different places. */
tree
unsave_expr
(
expr
)
tree
expr
;
{
tree
t
;
/* If this is already protected, no sense in protecting it again. */
if
(
TREE_CODE
(
expr
)
==
UNSAVE_EXPR
)
return
expr
;
t
=
build1
(
UNSAVE_EXPR
,
TREE_TYPE
(
expr
),
expr
);
TREE_SIDE_EFFECTS
(
t
)
=
TREE_SIDE_EFFECTS
(
expr
);
return
t
;
...
...
@@ -1984,16 +1991,19 @@ can_free (obstack, t)
}
/* Return first vector element whose BINFO_TYPE is ELEM.
Return 0 if ELEM is not in VEC. */
Return 0 if ELEM is not in VEC.
VEC may be NULL_TREE.
*/
tree
vec_binfo_member
(
elem
,
vec
)
tree
elem
,
vec
;
{
int
i
;
for
(
i
=
0
;
i
<
TREE_VEC_LENGTH
(
vec
);
++
i
)
if
(
elem
==
BINFO_TYPE
(
TREE_VEC_ELT
(
vec
,
i
)))
return
TREE_VEC_ELT
(
vec
,
i
);
if
(
vec
)
for
(
i
=
0
;
i
<
TREE_VEC_LENGTH
(
vec
);
++
i
)
if
(
elem
==
BINFO_TYPE
(
TREE_VEC_ELT
(
vec
,
i
)))
return
TREE_VEC_ELT
(
vec
,
i
);
return
NULL_TREE
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment