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

             Bug #: 12767
           Summary: The preprocessor doesn't inhibit expansion when
                    concatenating with an empty token
           Product: clang
           Version: 3.0
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: -New Bugs
        AssignedTo: [email protected]
        ReportedBy: [email protected]
                CC: [email protected]
    Classification: Unclassified


The preprocessor doesn't inhibit expansion when concatenating with an empty
token.
Here an example:

#define EMPTY()
#define DEFER(id) id EMPTY()

#define A(p, ...) p ## __VA_ARGS__ // should inhibit expansion of ...

#define B(p, ...) p __VA_ARGS__

#define TEST() 123

A(, DEFER(TEST)()) // should be TEST (), but clang expands to 123
B(, DEFER(TEST)()) // should be 123

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- 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