http://llvm.org/bugs/show_bug.cgi?id=19242

            Bug ID: 19242
           Summary: attribute_deprecated_with_message enabled when
                    [[deprecated]] is not available
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected], [email protected]
    Classification: Unclassified

Given:

  #if !defined(__clang__)
  #define __has_extension(x) 0
  #endif

  #if __has_extension(attribute_deprecated_with_message)
  #define DEPR_ATTR [[deprecated]]
  #else
  #define DEPR_ATTR
  #endif

  DEPR_ATTR void something();

stephen@hal:~/dev/src/playground/cpp{master}$ g++ -c deprecated.cpp 
stephen@hal:~/dev/src/playground/cpp{master}$ clang++ -c deprecated.cpp 
deprecated.cpp:12:1: error: expected unqualified-id
DEPR_ATTR void something();
^
deprecated.cpp:7:19: note: expanded from macro 'DEPR_ATTR'
#define DEPR_ATTR [[deprecated]]
                  ^
deprecated.cpp:12:1: error: expected expression
deprecated.cpp:7:20: note: expanded from macro 'DEPR_ATTR'
#define DEPR_ATTR [[deprecated]]
                   ^
2 errors generated.
stephen@hal:~/dev/src/playground/cpp{master}$ clang++ -std=c++11 -c
deprecated.cpp 
stephen@hal:~/dev/src/playground/cpp{master}$ clang++ --version
Ubuntu clang version 3.5.0-1~exp1 (trunk) (based on LLVM 3.5.0)
Target: x86_64-pc-linux-gnu
Thread model: posix

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs

Reply via email to