[cxx-mem-model] C++ wrappers

Andrew MacLeod amacleod@redhat.com
Thu Sep 15 23:08:00 GMT 2011


On 09/15/2011 05:14 PM, Richard Henderson wrote:
> On 09/15/2011 02:03 PM, Andrew MacLeod wrote:
>> On 09/15/2011 04:47 PM, Richard Henderson wrote:
>>> On 09/09/2011 01:29 PM, Andrew MacLeod wrote:
>>>> !       { return __sync_mem_add__fetch(&_M_i, 1, memory_order_seq_cst); }
>>>
>>>                                    ^^ typo
>>>
>>> Which begs the question of how this didn't get caught
>>> in the testsuite somewhere?
>>>
>>
>> good catch :-)
>>
>> a template calling that particular method was probably not invoked. The joys of c++ templates eh :-)
>
> Isn't there an extension that forces an entire class template to be instantiated?
>
It is instantiated, but if someone doesn't actually make a call to 
operator++() volatile  (which I think is where this mistyped call was), 
you don't end up with an unresolved function call...

At least it didn't trip up any tests cases and I did a full bootstrap & 
make check.

Andrew



More information about the Gcc-patches mailing list