https://bugs.llvm.org/show_bug.cgi?id=38463

            Bug ID: 38463
           Summary: Declaration disambiguation is too greedy
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: C++
          Assignee: unassignedclangb...@nondot.org
          Reporter: blitzrak...@gmail.com
                CC: dgre...@apple.com, llvm-bugs@lists.llvm.org

struct X {
  void operator=(int);
} x;

int main() {
  1 + 1, X(x) = 4; // ok
  X(x) = 4, 1 + 1; // clang fails
}

clang cannot compile the second statement, because it thinks it is a
declaration, even though it is not. EDG compiles this just fine (gcc and MSVC
do not).

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to