[compiler-rt] r248346 - [builtins] Fixing broken bot building on linux with -Werror
Chris Bieneman via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 23 08:32:18 PDT 2015
> On Sep 23, 2015, at 5:30 AM, Aaron Ballman <aaron at aaronballman.com> wrote:
>
> On Tue, Sep 22, 2015 at 8:01 PM, Chris Bieneman <beanz at apple.com <mailto:beanz at apple.com>> wrote:
>>
>>
>>> On Sep 22, 2015, at 4:38 PM, Aaron Ballman <aaron at aaronballman.com> wrote:
>>>
>>> On Tue, Sep 22, 2015 at 7:35 PM, Chris Bieneman via llvm-commits
>>> <llvm-commits at lists.llvm.org> wrote:
>>>> Author: cbieneman
>>>> Date: Tue Sep 22 18:35:24 2015
>>>> New Revision: 248346
>>>>
>>>> URL: http://llvm.org/viewvc/llvm-project?rev=248346&view=rev
>>>> Log:
>>>> [builtins] Fixing broken bot building on linux with -Werror
>>>>
>>>> Returning a void expression is bad.
>>>
>>> Why is returning a void expression bad? Also, why do these require
>>> return statements at all?
>>
>> Returning a void expression is a warning on -Wpedantic (lab.llvm.org <http://lab.llvm.org/>:8011/builders/sanitizer-x86_64-linux/builds/20392).
>
> Good to know, thanks!
>
>> The return itself isn't needed, but is common C convention.
>
> This is the first I've heard that this is a C convention (but I'm not
> claiming that it isn't). It doesn't appear to be one we adhere to with
> any consistency -- I did a quick scan of other builtins (see
> atomic_signal_fence.c and atomic_thread_fence.c) and they elide the
> return. Since it's not needed anyway, I think it'd be good to remove.
Revised r248385.
-Chris
>
> ~Aaron
>
>>
>> -Chris
>>>
>>> ~Aaron
>>>
>>>>
>>>> Modified:
>>>> compiler-rt/trunk/lib/builtins/atomic_flag_clear.c
>>>> compiler-rt/trunk/lib/builtins/atomic_flag_clear_explicit.c
>>>>
>>>> Modified: compiler-rt/trunk/lib/builtins/atomic_flag_clear.c
>>>> URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/builtins/atomic_flag_clear.c?rev=248346&r1=248345&r2=248346&view=diff
>>>> ==============================================================================
>>>> --- compiler-rt/trunk/lib/builtins/atomic_flag_clear.c (original)
>>>> +++ compiler-rt/trunk/lib/builtins/atomic_flag_clear.c Tue Sep 22 18:35:24 2015
>>>> @@ -21,7 +21,8 @@
>>>> #include <stdatomic.h>
>>>> #undef atomic_flag_clear
>>>> void atomic_flag_clear(volatile atomic_flag *object) {
>>>> - return __c11_atomic_store(&(object)->_Value, 0, __ATOMIC_SEQ_CST);
>>>> + __c11_atomic_store(&(object)->_Value, 0, __ATOMIC_SEQ_CST);
>>>> + return;
>>>> }
>>>>
>>>> #endif
>>>>
>>>> Modified: compiler-rt/trunk/lib/builtins/atomic_flag_clear_explicit.c
>>>> URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/builtins/atomic_flag_clear_explicit.c?rev=248346&r1=248345&r2=248346&view=diff
>>>> ==============================================================================
>>>> --- compiler-rt/trunk/lib/builtins/atomic_flag_clear_explicit.c (original)
>>>> +++ compiler-rt/trunk/lib/builtins/atomic_flag_clear_explicit.c Tue Sep 22 18:35:24 2015
>>>> @@ -22,7 +22,8 @@
>>>> #undef atomic_flag_clear_explicit
>>>> void atomic_flag_clear_explicit(volatile atomic_flag *object,
>>>> memory_order order) {
>>>> - return __c11_atomic_store(&(object)->_Value, 0, order);
>>>> + __c11_atomic_store(&(object)->_Value, 0, order);
>>>> + return;
>>>> }
>>>>
>>>> #endif
>>>>
>>>>
>>>> _______________________________________________
>>>> llvm-commits mailing list
>>>> llvm-commits at lists.llvm.org
>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150923/8b1212d1/attachment.html>
More information about the llvm-commits
mailing list