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

             Bug #: 14378
           Summary: vfork() should not be a builtin that returns int
           Product: clang
           Version: 3.2
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: release blocker
          Priority: P
         Component: Frontend
        AssignedTo: [email protected]
        ReportedBy: [email protected]
                CC: [email protected]
    Classification: Unclassified


According to POSIX, vfork() should return a pid_t. A pid_t is only defined to
be of a signed integer type.

However, Clang forces this to be int:
LIBBUILTIN(vfork, "i",            "fj",    "unistd.h", ALL_LANGUAGES)

This actually causes trouble: Clang refuses to compile programs on for example
Haiku that try to use vfork(), complaining about an incompatible redefinition
because the header defines it to return pid_t, which on e.g. Haiku is a signed
long.

Please remove the line before the 3.2 release!

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