[llvm-bugs] [Bug 34319] New: Attribute names enclosed by __ are sometimes rejected
    via llvm-bugs 
    llvm-bugs at lists.llvm.org
       
    Fri Aug 25 01:07:36 PDT 2017
    
    
  
https://bugs.llvm.org/show_bug.cgi?id=34319
            Bug ID: 34319
           Summary: Attribute names enclosed by __ are sometimes rejected
           Product: clang
           Version: unspecified
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Frontend
          Assignee: unassignedclangbugs at nondot.org
          Reporter: sebastian.huber at embedded-brains.de
                CC: llvm-bugs at lists.llvm.org
>From the GCC documentation we have
https://gcc.gnu.org/onlinedocs/gcc/Attribute-Syntax.html#Attribute-Syntax
"You may optionally specify attribute names with ‘__’ preceding and following
the name. This allows you to use them in header files without being concerned
about a possible macro of the same name. For example, you may use the attribute
name __noreturn__ instead of noreturn."
It would be nice if this is also supported by clang, e.g. for use in standard C
library header files. We have for example:
void f0(void) __attribute__((noreturn));
void f1(void) __attribute__((__noreturn__));
void f2(int *l) __attribute__((exclusive_lock_function(*l)));
void f3(int *l) __attribute__((__exclusive_lock_function__(*l)));
Which yields:
clang -c test.c
test.c:4:61: error: use of undeclared identifier 'l'
void f3(int *l) __attribute__((__exclusive_lock_function__(*l)));
                                                            ^
1 error generated.
-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20170825/3dbe945a/attachment.html>
    
    
More information about the llvm-bugs
mailing list