[LLVMbugs] [Bug 7600] New: Incorrect return type from __sync_val_compare_and_swap builtin

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Thu Jul 8 18:44:09 PDT 2010


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

           Summary: Incorrect return type from __sync_val_compare_and_swap
                    builtin
           Product: clang
           Version: unspecified
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: -New Bugs
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: chandlerc at gmail.com
                CC: llvmbugs at cs.uiuc.edu


% cat t.cc
void *foo(void **m) {
  void *newval = 0;
  void *oldval = 0;
  return __sync_val_compare_and_swap(m, oldval, newval);
}

% ./clang -fsyntax-only t.cc
t.cc:4:10: error: cannot initialize return object of type 'void *' with an
rvalue of type 'long long'
  return __sync_val_compare_and_swap(m, oldval, newval);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

-- 
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.



More information about the llvm-bugs mailing list