[PATCH] fix generic std::atomic<T>::compare_exchange_{weak,strong}

Nathan Froyd froydnj@mozilla.com
Fri Jul 26 19:02:00 GMT 2013


Sure, I can do that.  For maximum effectiveness, it'd be good to have it check the specializations for atomic<>, too.  Is there something in the libstdc++ testsuite for iterating template instantiations over a list of types, or do I have to roll the list myself?

Thanks,
-Nathan

----- Original Message -----
> 
> 
> Hi,
> 
> Nathan Froyd <nfroyd@mozilla.com> ha scritto:
> >Compiling the test program:
> >
> >#include <atomic>
> >
> >enum x { a, b };
> >
> >std::atomic<x> v;
> >
> >bool test_strong()
> >{
> >  x expected = a;
> >return v.compare_exchange_strong(expected, b,
> >std::memory_order_acq_rel);
> >}
> >
> >bool test_weak()
> >{
> >  x expected = a;
> >return v.compare_exchange_weak(expected, b, std::memory_order_acq_rel);
> >}
> 
> In any case, why not adding the testcase?
> 
> Paolo
> 



More information about the Gcc-patches mailing list