On 02/02/2018 06:47 PM, Arnd Bergmann wrote:
> gcc-8 complains about the prototype for this function:
> 
> lib/ubsan.c:432:1: error: ignoring attribute 'noreturn' in declaration of a 
> built-in function '__ubsan_handle_builtin_unreachable' because it conflicts 
> with attribute 'const' [-Werror=attributes]
> 

That's actually a bug in GCC. In GCC __ubsan_handle_builtin_unreachable declared
with 'noreturn' and 'const' attributes:

DEF_SANITIZER_BUILTIN(BUILT_IN_UBSAN_HANDLE_BUILTIN_UNREACHABLE,                
                                                                                
                                                    
                      "__ubsan_handle_builtin_unreachable",                     
                                                                                
                                                    
                      BT_FN_VOID_PTR,                                           
                                                                                
                                                    
                      ATTR_COLD_CONST_NORETURN_NOTHROW_LEAF_LIST)


But const attribute doesn't make any sense for function that returns void or 
doesn't return at all.
Given that gcc-8 has not released yet, it would be better to fix this bug there.

Reply via email to