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
bd16f8f1
Commit
bd16f8f1
authored
May 23, 2005
by
Jason Merrill
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
tweak comment
From-SVN: r100088
parent
a9563c96
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
12 additions
and
9 deletions
+12
-9
gcc/cp/except.c
+12
-9
No files found.
gcc/cp/except.c
View file @
bd16f8f1
...
...
@@ -697,15 +697,18 @@ build_throw (tree exp)
the space first we would have to deal with cleaning it up if
evaluating this expression throws.
The case where EXP the initializer is a call to a constructor or a
function returning a class is a bit of a grey area in the
standard; it's unclear whether or not it should be allowed to
throw. We used to say no, as that allowed us to optimize this
case without worrying about deallocating the exception object if
it does. But that conflicted with expectations (PR 13944) and the
EDG compiler; now we wrap the initialization in a TRY_CATCH_EXPR
to call do_free_exception rather than in a MUST_NOT_THROW_EXPR,
for this case only.
The case where EXP the initializer is a cast or a function
returning a class is a bit of a grey area in the standard; it's
unclear whether or not it should be allowed to throw. We used to
say no, as that allowed us to optimize this case without worrying
about deallocating the exception object if it does. But that
conflicted with expectations (PR 13944) and the EDG compiler; now
we wrap the initialization in a TRY_CATCH_EXPR to call
do_free_exception rather than in a MUST_NOT_THROW_EXPR, for this
case only.
BUT: Issue 475 may do away with this inconsistency by removing the
terminate() in this situation.
Note that we don't check the return value from stabilize_init
because it will only return false in cases where elided is true,
...
...
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