aboutsummaryrefslogtreecommitdiff
path: root/libitm/libitm.texi
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2018-12-16 00:51:31 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2018-12-16 00:51:31 +0100
commit784417d1f808ea70f013a90aeede3b20e6013e39 (patch)
treed5fb499587fc8a484ff6fc7e4c0565251f7971fb /libitm/libitm.texi
parente310b38153d15c6d3ae9686eb38b6629f0f93393 (diff)
downloadgcc-784417d1f808ea70f013a90aeede3b20e6013e39.zip
gcc-784417d1f808ea70f013a90aeede3b20e6013e39.tar.gz
gcc-784417d1f808ea70f013a90aeede3b20e6013e39.tar.bz2
re PR c++/88482 (ICE when wrongly declaring __cxa_allocate_exception)
PR c++/88482 * except.c (verify_library_fn): New function. (declare_library_fn): Use it. Initialize TM even if the non-TM library function has been user declared. (do_end_catch): Don't set TREE_NOTHROW on error_mark_node. (expand_start_catch_block): Don't call initialize_handler_parm for error_mark_node. (build_throw): Use verify_library_fn. Initialize TM even if the non-TM library function has been user declared. Don't crash if any library fn is error_mark_node. * g++.dg/eh/builtin5.C: New test. * g++.dg/eh/builtin6.C: New test. * g++.dg/eh/builtin7.C: New test. * g++.dg/eh/builtin8.C: New test. * g++.dg/eh/builtin9.C: New test. * g++.dg/eh/builtin10.C: New test. * g++.dg/eh/builtin11.C: New test. * g++.dg/parse/crash55.C: Adjust expected diagnostics. * eh_cpp.cc (__cxa_throw): Change DEST argument type from void * to void (*) (void *). (_ITM_cxa_throw): Likewise. * libitm.h (_ITM_cxa_throw): Likewise. * libitm.texi (_ITM_cxa_throw): Likewise. From-SVN: r267179
Diffstat (limited to 'libitm/libitm.texi')
-rw-r--r--libitm/libitm.texi2
1 files changed, 1 insertions, 1 deletions
diff --git a/libitm/libitm.texi b/libitm/libitm.texi
index 7a91348..d0b7b07 100644
--- a/libitm/libitm.texi
+++ b/libitm/libitm.texi
@@ -269,7 +269,7 @@ transactions.
void _ITM_commitTransactionEH(void *exc_ptr) ITM_REGPARM;
void *_ITM_cxa_allocate_exception (size_t);
void _ITM_cxa_free_exception (void *exc_ptr);
-void _ITM_cxa_throw (void *obj, void *tinfo, void *dest);
+void _ITM_cxa_throw (void *obj, void *tinfo, void (*dest) (void *));
void *_ITM_cxa_begin_catch (void *exc_ptr);
void _ITM_cxa_end_catch (void);
@end example