summaryrefslogtreecommitdiff
path: root/gcc/cp/cp-tree.h
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/cp/cp-tree.h')
-rw-r--r--gcc/cp/cp-tree.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index 80d6c4e4a2f..5acb065aba0 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -5317,6 +5317,8 @@ struct cp_declarator {
cp_virt_specifiers virt_specifiers;
/* The ref-qualifier for the function. */
cp_ref_qualifier ref_qualifier;
+ /* The transaction-safety qualifier for the function. */
+ tree tx_qualifier;
/* The exception-specification for the function. */
tree exception_specification;
/* The late-specified return type, if any. */
@@ -5604,6 +5606,9 @@ extern tree convert_force (tree, tree, int,
extern tree build_expr_type_conversion (int, tree, bool);
extern tree type_promotes_to (tree);
extern tree perform_qualification_conversions (tree, tree);
+extern bool tx_safe_fn_type_p (tree);
+extern tree tx_unsafe_fn_variant (tree);
+extern bool can_convert_tx_safety (tree, tree);
/* in name-lookup.c */
extern tree pushdecl (tree);
@@ -6218,9 +6223,11 @@ extern void finish_cleanup (tree, tree);
extern bool is_this_parameter (tree);
enum {
+ BCS_NORMAL = 0,
BCS_NO_SCOPE = 1,
BCS_TRY_BLOCK = 2,
- BCS_FN_BODY = 4
+ BCS_FN_BODY = 4,
+ BCS_TRANSACTION = 8
};
extern tree begin_compound_stmt (unsigned int);