The Transactional Memory TS introduces "transaction-safe function" types, which are distinct from non-transaction-safe function types, though the former converts to the latter. So we need to represent this in mangling.

I think no change to mangling of actual functions is necessary, since functions that differ only in their tx-qualifier cannot be overloaded. So we only need to worry about function types.

One possibility for handling it would be to add a qualifier 'T' after the <ref-qualifier> at the end of <function-type>, but that complicates the ambiguity between these qualifiers and parameter types.

I think my preference is to make it a normal type qualifier, perhaps using "Dx", so void (*)() transaction_safe becomes "PDxFvvE".

We also need to add a __transaction_safe_mask to __pbase_type_info::__masks so that exception handlers can perform the transaction safety conversion.

Make sense?

Jason
_______________________________________________
cxx-abi-dev mailing list
[email protected]
http://sourcerytools.com/cgi-bin/mailman/listinfo/cxx-abi-dev

Reply via email to