<div dir="ltr">Hi Alex,<div><br></div><div>Sorry about the breakage. It's reverted in r287531.</div><div><br></div><div>/Eric</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 21, 2016 at 3:59 AM, Alex L <span dir="ltr"><<a href="mailto:arphaman@gmail.com" target="_blank">arphaman@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hello Eric,<div><br></div><div><div>I think that this commit (r<span style="font-size:12.800000190734863px">287435)</span> might have broken the green dragon stage 2 ASAN + UBSAN buildbot:</div><div><br></div><div><a href="http://lab.llvm.org:8080/green/job/clang-stage2-cmake-RgSan_check/2643/" target="_blank">http://lab.llvm.org:8080/<wbr>green/job/clang-stage2-cmake-<wbr>RgSan_check/2643/</a></div><div><br></div><div>I'm not sure why exactly the tests fail, since ASAN/UBSAN isn't triggering anything, and it's just a module error. The other bots have passed these tests successfully. Do you happen to know what might be causing the test failures?</div><div><br></div><div>Thanks,</div><div>Alex</div></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On 19 November 2016 at 03:29, Eric Fiselier via cfe-commits <span dir="ltr"><<a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: ericwf<br>
Date: Fri Nov 18 21:29:03 2016<br>
New Revision: 287435<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=287435&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-pr<wbr>oject?rev=287435&view=rev</a><br>
Log:<br>
Fix stdint/cstdint modules<br>
<br>
Added:<br>
    libcxx/trunk/test/libcxx/modul<wbr>es/cinttypes_exports.sh.cpp<br>
    libcxx/trunk/test/libcxx/modul<wbr>es/cstdint_exports.sh.cpp<br>
    libcxx/trunk/test/libcxx/modul<wbr>es/inttypes_h_exports.sh.cpp<br>
    libcxx/trunk/test/libcxx/modul<wbr>es/stdint_h_exports.sh.cpp<br>
Modified:<br>
    libcxx/trunk/include/module.mo<wbr>dulemap<br>
<br>
Modified: libcxx/trunk/include/module.mo<wbr>dulemap<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/module.modulemap?rev=287435&r1=287434&r2=287435&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-pr<wbr>oject/libcxx/trunk/include/mod<wbr>ule.modulemap?rev=287435&r1=<wbr>287434&r2=287435&view=diff</a><br>
==============================<wbr>==============================<wbr>==================<br>
--- libcxx/trunk/include/module.mo<wbr>dulemap (original)<br>
+++ libcxx/trunk/include/module.mo<wbr>dulemap Fri Nov 18 21:29:03 2016<br>
@@ -21,47 +21,20 @@ module std [system] {<br>
     module inttypes_h {<br>
       header "inttypes.h"<br>
       export stdint_h<br>
-/*<br>
-      export_macros<br>
-        PRId8, PRId16, PRId32, PRId64, PRIdFAST8, PRIdFAST16, PRIdFAST32, PRIdFAST64, PRIdLEAST8, PRIdLEAST16, PRIdLEAST32, PRIdLEAST64, PRIdMAX, PRIdPTR,<br>
-        PRIi8, PRIi16, PRIi32, PRIi64, PRIiFAST8, PRIiFAST16, PRIiFAST32, PRIiFAST64, PRIiLEAST8, PRIiLEAST16, PRIiLEAST32, PRIiLEAST64, PRIiMAX, PRIiPTR,<br>
-        PRIo8, PRIo16, PRIo32, PRIo64, PRIoFAST8, PRIoFAST16, PRIoFAST32, PRIoFAST64, PRIoLEAST8, PRIoLEAST16, PRIoLEAST32, PRIoLEAST64, PRIoMAX, PRIoPTR,<br>
-        PRIu8, PRIu16, PRIu32, PRIu64, PRIuFAST8, PRIuFAST16, PRIuFAST32, PRIuFAST64, PRIuLEAST8, PRIuLEAST16, PRIuLEAST32, PRIuLEAST64, PRIuMAX, PRIuPTR,<br>
-        PRIx8, PRIx16, PRIx32, PRIx64, PRIxFAST8, PRIxFAST16, PRIxFAST32, PRIxFAST64, PRIxLEAST8, PRIxLEAST16, PRIxLEAST32, PRIxLEAST64, PRIxMAX, PRIxPTR,<br>
-        PRIX8, PRIX16, PRIX32, PRIX64, PRIXFAST8, PRIXFAST16, PRIXFAST32, PRIXFAST64, PRIXLEAST8, PRIXLEAST16, PRIXLEAST32, PRIXLEAST64, PRIXMAX, PRIXPTR,<br>
-        SCNd8, SCNd16, SCNd32, SCNd64, SCNdFAST8, SCNdFAST16, SCNdFAST32, SCNdFAST64, SCNdLEAST8, SCNdLEAST16, SCNdLEAST32, SCNdLEAST64, SCNdMAX, SCNdPTR,<br>
-        SCNi8, SCNi16, SCNi32, SCNi64, SCNiFAST8, SCNiFAST16, SCNiFAST32, SCNiFAST64, SCNiLEAST8, SCNiLEAST16, SCNiLEAST32, SCNiLEAST64, SCNiMAX, SCNiPTR,<br>
-        SCNo8, SCNo16, SCNo32, SCNo64, SCNoFAST8, SCNoFAST16, SCNoFAST32, SCNoFAST64, SCNoLEAST8, SCNoLEAST16, SCNoLEAST32, SCNoLEAST64, SCNoMAX, SCNoPTR,<br>
-        SCNu8, SCNu16, SCNu32, SCNu64, SCNuFAST8, SCNuFAST16, SCNuFAST32, SCNuFAST64, SCNuLEAST8, SCNuLEAST16, SCNuLEAST32, SCNuLEAST64, SCNuMAX, SCNuPTR,<br>
-        SCNx8, SCNx16, SCNx32, SCNx64, SCNxFAST8, SCNxFAST16, SCNxFAST32, SCNxFAST64, SCNxLEAST8, SCNxLEAST16, SCNxLEAST32, SCNxLEAST64, SCNxMAX, SCNxPTR,<br>
-        SCNX8, SCNX16, SCNX32, SCNX64, SCNXFAST8, SCNXFAST16, SCNXFAST32, SCNXFAST64, SCNXLEAST8, SCNXLEAST16, SCNXLEAST32, SCNXLEAST64, SCNXMAX, SCNXPTR<br>
-*/<br>
       export *<br>
     }<br>
     // <iso646.h> provided by compiler.<br>
     // <limits.h> provided by compiler or C library.<br>
     module locale_h {<br>
       header "locale.h"<br>
-/*<br>
-      export_macros LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY LC_NUMERIC LC_TIME<br>
-*/<br>
       export *<br>
     }<br>
     module math_h {<br>
       header "math.h"<br>
-/*<br>
-      export_macros FP_FAST_FMA, FP_FAST_FMAF, FP_FAST_FMAL, FP_ILOGBO, FP_ILOGBNAN,<br>
-                    FP_INFINITE, FP_NAN, FP_NORMAL, FP_SUBNORMAL, FP_ZERO,<br>
-                    HUGE_VAL, HUGE_VALF, HUGE_VALL, INFINITY, NAN,<br>
-                    MATH_ERRNO, MATH_ERREXCEPT, math_errhandling<br>
-*/<br>
       export *<br>
     }<br>
     module setjmp_h {<br>
       header "setjmp.h"<br>
-/*<br>
-      export_macros setjmp<br>
-*/<br>
       export *<br>
     }<br>
     // FIXME: <stdalign.h> is missing.<br>
@@ -72,30 +45,22 @@ module std [system] {<br>
       // <stddef.h>'s __need_* macros require textual inclusion.<br>
       textual header "stddef.h"<br>
     }<br>
-    // <stdint.h> provided by compiler or C library.<br>
+    module stdint_h {<br>
+      header "stdint.h"<br>
+      export *<br>
+    }<br>
     module stdio_h {<br>
       // <stdio.h>'s __need_* macros require textual inclusion.<br>
       textual header "stdio.h"<br>
-/*<br>
-      export_macros BUFSIZ, EOF, FILENAME_MAX, FOPEN_MAX, L_tmpnam, NULL,<br>
-                    SEEK_CUR, SEEK_END, SEEK_SET, TMP_MAX, _IOFBF, _IOLBF,<br>
-                    stdin, stdout, stderr<br>
-*/<br>
       export *<br>
     }<br>
     module stdlib_h {<br>
       // <stdlib.h>'s __need_* macros require textual inclusion.<br>
       textual header "stdlib.h"<br>
-/*<br>
-      export_macros RAND_MAX<br>
-*/<br>
       export *<br>
     }<br>
     module string_h {<br>
       header "string.h"<br>
-/*<br>
-      export_macros NULL<br>
-*/<br>
       export *<br>
     }<br>
     // FIXME: <uchar.h> is missing.<br>
@@ -103,16 +68,10 @@ module std [system] {<br>
     module wchar_h {<br>
       // <wchar.h>'s __need_* macros require textual inclusion.<br>
       textual header "wchar.h"<br>
-/*<br>
-      export_macros NULL, WCHAR_MAX, WCHAR_MIN, WEOF<br>
-*/<br>
       export *<br>
     }<br>
     module wctype_h {<br>
       header "wctype.h"<br>
-/*<br>
-      export_macros WEOF<br>
-*/<br>
       export *<br>
     }<br>
   }<br>
@@ -148,67 +107,19 @@ module std [system] {<br>
     }<br>
     module cerrno {<br>
       header "cerrno"<br>
-/*<br>
-      export_macros    ECONNREFUSED, EIO,          ENODEV,      ENOTEMPTY,       ERANGE,<br>
-        E2BIG,         ECONNRESET,   EISCONN,      ENOENT,      ENOTRECOVERABLE, EROFS,<br>
-        EACCES,        EDEADLK,      EISDIR,       ENOEXEC,     ENOTSOCK,        ESPIPE,<br>
-        EADDRINUSE,    EDESTADDRREQ, ELOOP,        ENOLCK,      ENOTSUP,         ESRCH,<br>
-        EADDRNOTAVAIL, EDOM,         EMFILE,       ENOLINK,     ENOTTY,          ETIME,<br>
-        EAFNOSUPPORT,  EEXIST,       EMLINK,       ENOMEM,      ENXIO,           ETIMEDOUT,<br>
-        EAGAIN,        EFAULT,       EMSGSIZE,     ENOMSG,      EOPNOTSUPP,      ETXTBSY,<br>
-        EALREADY,      EFBIG,        ENAMETOOLONG, ENOPROTOOPT, EOVERFLOW,       EWOULDBLOCK,<br>
-        EBADF,         EHOSTUNREACH, ENETDOWN,     ENOSPC,      EOWNERDEAD,      EXDEV,<br>
-        EBADMSG,       EIDRM,        ENETRESET,    ENOSR,       EPERM,           errno,<br>
-        EBUSY,         EILSEQ,       ENETUNREACH,  ENOSTR,      EPIPE,<br>
-        ECANCELED,     EINPROGRESS,  ENFILE,       ENOSYS,      EPROTO,<br>
-        ECHILD,        EINTR,        ENOBUFS,      ENOTCONN,    EPROTONOSUPPORT,<br>
-        ECONNABORTED,  EINVAL,       ENODATA,      ENOTDIR,     EPROTOTYPE<br>
-*/<br>
       export *<br>
     }<br>
     module cfenv {<br>
       header "cfenv"<br>
-/*<br>
-      export_macros FE_ALL_EXCEPT, FE_DIVBYZERO, FE_INEXACT, FE_INVALID, FE_OVERFLOW,<br>
-                    FE_UNDERFLOW, FE_DOWNWARD, FE_TONEAREST, FE_TOWARDZERO, FE_UPWARD,<br>
-                    FE_DFL_ENV<br>
-*/<br>
       export *<br>
     }<br>
     module cfloat {<br>
       header "cfloat"<br>
-/*<br>
-      export_macros FLT_EVAL_METHOD, FLT_RADIX, FLT_ROUNDS,<br>
-                    FLT_DIG, FLT_EPSILON, FLT_MANT_DIG,<br>
-                    FLT_MAX, FLT_MAX_10_EXP, FLT_MAX_EXP,<br>
-                    FLT_MIN, FLT_MIN_10_EXP, FLT_MIN_EXP,<br>
-                    DBL_DIG, DBL_EPSILON, DBL_MANT_DIG,<br>
-                    DBL_MAX, DBL_MAX_10_EXP, DBL_MAX_EXP,<br>
-                    DBL_MIN, DBL_MIN_10_EXP, DBL_MIN_EXP,<br>
-                    LDBL_DIG, LDBL_EPSILON, LDBL_MANT_DIG,<br>
-                    LDBL_MAX, LDBL_MAX_10_EXP, LDBL_MAX_EXP,<br>
-                    LDBL_MIN, LDBL_MIN_10_EXP, LDBL_MIN_EXP<br>
-*/<br>
       export *<br>
     }<br>
     module cinttypes {<br>
       header "cinttypes"<br>
       export cstdint<br>
-/*<br>
-      export_macros<br>
-        PRId8, PRId16, PRId32, PRId64, PRIdFAST8, PRIdFAST16, PRIdFAST32, PRIdFAST64, PRIdLEAST8, PRIdLEAST16, PRIdLEAST32, PRIdLEAST64, PRIdMAX, PRIdPTR,<br>
-        PRIi8, PRIi16, PRIi32, PRIi64, PRIiFAST8, PRIiFAST16, PRIiFAST32, PRIiFAST64, PRIiLEAST8, PRIiLEAST16, PRIiLEAST32, PRIiLEAST64, PRIiMAX, PRIiPTR,<br>
-        PRIo8, PRIo16, PRIo32, PRIo64, PRIoFAST8, PRIoFAST16, PRIoFAST32, PRIoFAST64, PRIoLEAST8, PRIoLEAST16, PRIoLEAST32, PRIoLEAST64, PRIoMAX, PRIoPTR,<br>
-        PRIu8, PRIu16, PRIu32, PRIu64, PRIuFAST8, PRIuFAST16, PRIuFAST32, PRIuFAST64, PRIuLEAST8, PRIuLEAST16, PRIuLEAST32, PRIuLEAST64, PRIuMAX, PRIuPTR,<br>
-        PRIx8, PRIx16, PRIx32, PRIx64, PRIxFAST8, PRIxFAST16, PRIxFAST32, PRIxFAST64, PRIxLEAST8, PRIxLEAST16, PRIxLEAST32, PRIxLEAST64, PRIxMAX, PRIxPTR,<br>
-        PRIX8, PRIX16, PRIX32, PRIX64, PRIXFAST8, PRIXFAST16, PRIXFAST32, PRIXFAST64, PRIXLEAST8, PRIXLEAST16, PRIXLEAST32, PRIXLEAST64, PRIXMAX, PRIXPTR,<br>
-        SCNd8, SCNd16, SCNd32, SCNd64, SCNdFAST8, SCNdFAST16, SCNdFAST32, SCNdFAST64, SCNdLEAST8, SCNdLEAST16, SCNdLEAST32, SCNdLEAST64, SCNdMAX, SCNdPTR,<br>
-        SCNi8, SCNi16, SCNi32, SCNi64, SCNiFAST8, SCNiFAST16, SCNiFAST32, SCNiFAST64, SCNiLEAST8, SCNiLEAST16, SCNiLEAST32, SCNiLEAST64, SCNiMAX, SCNiPTR,<br>
-        SCNo8, SCNo16, SCNo32, SCNo64, SCNoFAST8, SCNoFAST16, SCNoFAST32, SCNoFAST64, SCNoLEAST8, SCNoLEAST16, SCNoLEAST32, SCNoLEAST64, SCNoMAX, SCNoPTR,<br>
-        SCNu8, SCNu16, SCNu32, SCNu64, SCNuFAST8, SCNuFAST16, SCNuFAST32, SCNuFAST64, SCNuLEAST8, SCNuLEAST16, SCNuLEAST32, SCNuLEAST64, SCNuMAX, SCNuPTR,<br>
-        SCNx8, SCNx16, SCNx32, SCNx64, SCNxFAST8, SCNxFAST16, SCNxFAST32, SCNxFAST64, SCNxLEAST8, SCNxLEAST16, SCNxLEAST32, SCNxLEAST64, SCNxMAX, SCNxPTR,<br>
-        SCNX8, SCNX16, SCNX32, SCNX64, SCNXFAST8, SCNXFAST16, SCNXFAST32, SCNXFAST64, SCNXLEAST8, SCNXLEAST16, SCNXLEAST32, SCNXLEAST64, SCNXMAX, SCNXPTR<br>
-*/<br>
       export *<br>
     }<br>
     module ciso646 {<br>
@@ -217,108 +128,52 @@ module std [system] {<br>
     }<br>
     module climits {<br>
       header "climits"<br>
-/*<br>
-      export_macros CHAR_BIT,  CHAR_MIN,  CHAR_MAX,<br>
-                    SCHAR_MIN, SCHAR_MAX, UCHAR_MAX,<br>
-                    SHRT_MIN,  SHRT_MAX,  USHRT_MAX,<br>
-                    INT_MIN,   INT_MAX,   UINT_MAX,<br>
-                    LONG_MIN,  LONG_MAX,  ULONG_MAX,<br>
-                    LLONG_MIN, LLONG_MAX, ULLONG_MAX,<br>
-                    MB_LEN_MAX<br>
-*/<br>
       export *<br>
     }<br>
     module clocale {<br>
       header "clocale"<br>
-/*<br>
-      export_macros LC_ALL, LC_COLLATE, LC_CTYPE, LC_MONETARY, LC_NUMERIC, LC_TIME, NULL<br>
-*/<br>
       export *<br>
     }<br>
     module cmath {<br>
       header "cmath"<br>
-/*<br>
-      export_macros FP_FAST_FMA, FP_FAST_FMAF, FP_FAST_FMAL, FP_ILOGBO, FP_ILOGBNAN,<br>
-                    FP_INFINITE, FP_NAN, FP_NORMAL, FP_SUBNORMAL, FP_ZERO,<br>
-                    HUGE_VAL, HUGE_VALF, HUGE_VALL, INFINITY, NAN,<br>
-                    MATH_ERRNO, MATH_ERREXCEPT, math_errhandling<br>
-*/<br>
       export *<br>
     }<br>
     module csetjmp {<br>
       header "csetjmp"<br>
-/*<br>
-      export_macros setjmp<br>
-*/<br>
       export *<br>
     }<br>
     module csignal {<br>
       header "csignal"<br>
-/*<br>
-      export_macros SIGABRT, SIGFPE, SIGILL, SIGINT, SIGSEGV, SIGTERM,<br>
-                    SIG_DFL, SIG_IGN, SIG_ERR<br>
-*/<br>
       export *<br>
     }<br>
     // FIXME: <cstdalign> is missing.<br>
     module cstdarg {<br>
       header "cstdarg"<br>
-/*<br>
-      export_macros va_arg, va_start, va_end, va_copy<br>
-*/<br>
       export *<br>
     }<br>
     module cstdbool {<br>
       header "cstdbool"<br>
-/*<br>
-      export_macros __bool_true_false_are_defined<br>
-*/<br>
       export *<br>
     }<br>
     module cstddef {<br>
       header "cstddef"<br>
-/*<br>
-      export_macros NULL, offsetof<br>
-*/<br>
       export *<br>
     }<br>
     module cstdint {<br>
       header "cstdint"<br>
-/*<br>
-      export_macros<br>
-        INT_8_MIN, INT_8_MAX, UINT_8_MAX, INT_16_MIN, INT_16_MAX, UINT_16_MAX,<br>
-        INT_32_MIN, INT_32_MAX, UINT_32_MAX, INT_64_MIN, INT_64_MAX, UINT_64_MAX,<br>
-        INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX,<br>
-        INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX,<br>
-        INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX,<br>
-        INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,<br>
-        INT_MAX_MIN, INT_MAX_MAX, UINT_MAX_MAX, INT_PTR_MIN, INT_PTR_MAX, UINT_PTR_MAX,<br>
-        PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX,<br>
-        SIZE_MAX<br>
-*/<br>
+      export depr.stdint_h<br>
       export *<br>
     }<br>
     module cstdio {<br>
       header "cstdio"<br>
-/*<br>
-      export_macros BUFSIZ, EOF, FILENAME_MAX, FOPEN_MAX, L_tmpnam, NULL,<br>
-                    SEEK_CUR, SEEK_END, SEEK_SET, TMP_MAX, _IOFBF, _IOLBF,<br>
-                    stdin, stdout, stderr<br>
-*/<br>
       export *<br>
     }<br>
     module cstdlib {<br>
       header "cstdlib"<br>
-/*<br>
-      export_macros RAND_MAX<br>
-*/<br>
       export *<br>
     }<br>
     module cstring {<br>
       header "cstring"<br>
-/*<br>
-      export_macros NULL<br>
-*/<br>
       export *<br>
     }<br>
     module ctgmath {<br>
@@ -329,24 +184,15 @@ module std [system] {<br>
     }<br>
     module ctime {<br>
       header "ctime"<br>
-/*<br>
-      export_macros NULL, CLOCKS_PER_SEC<br>
-*/<br>
       export *<br>
     }<br>
     // FIXME: <cuchar> is missing.<br>
     module cwchar {<br>
       header "cwchar"<br>
-/*<br>
-      export_macros NULL, WCHAR_MAX, WCHAR_MIN, WEOF<br>
-*/<br>
       export *<br>
     }<br>
     module cwctype {<br>
       header "cwctype"<br>
-/*<br>
-      export_macros WEOF<br>
-*/<br>
       export *<br>
     }<br>
   }<br>
@@ -373,118 +219,10 @@ module std [system] {<br>
     export *<br>
   }<br>
   // No submodule for cassert. It fundamentally needs repeated, textual inclusion.<br>
-  module ccomplex {<br>
-    header "ccomplex"<br>
-    export complex<br>
-    export *<br>
-  }<br>
-  module cctype {<br>
-    header "cctype"<br>
-    export *<br>
-  }<br>
-  module cerrno {<br>
-    header "cerrno"<br>
-/*<br>
-    export_macros    ECONNREFUSED, EIO,          ENODEV,      ENOTEMPTY,       ERANGE,<br>
-      E2BIG,         ECONNRESET,   EISCONN,      ENOENT,      ENOTRECOVERABLE, EROFS,<br>
-      EACCES,        EDEADLK,      EISDIR,       ENOEXEC,     ENOTSOCK,        ESPIPE,<br>
-      EADDRINUSE,    EDESTADDRREQ, ELOOP,        ENOLCK,      ENOTSUP,         ESRCH,<br>
-      EADDRNOTAVAIL, EDOM,         EMFILE,       ENOLINK,     ENOTTY,          ETIME,<br>
-      EAFNOSUPPORT,  EEXIST,       EMLINK,       ENOMEM,      ENXIO,           ETIMEDOUT,<br>
-      EAGAIN,        EFAULT,       EMSGSIZE,     ENOMSG,      EOPNOTSUPP,      ETXTBSY,<br>
-      EALREADY,      EFBIG,        ENAMETOOLONG, ENOPROTOOPT, EOVERFLOW,       EWOULDBLOCK,<br>
-      EBADF,         EHOSTUNREACH, ENETDOWN,     ENOSPC,      EOWNERDEAD,      EXDEV,<br>
-      EBADMSG,       EIDRM,        ENETRESET,    ENOSR,       EPERM,           errno,<br>
-      EBUSY,         EILSEQ,       ENETUNREACH,  ENOSTR,      EPIPE,<br>
-      ECANCELED,     EINPROGRESS,  ENFILE,       ENOSYS,      EPROTO,<br>
-      ECHILD,        EINTR,        ENOBUFS,      ENOTCONN,    EPROTONOSUPPORT,<br>
-      ECONNABORTED,  EINVAL,       ENODATA,      ENOTDIR,     EPROTOTYPE<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cfenv {<br>
-    header "cfenv"<br>
-/*<br>
-    export_macros FE_ALL_EXCEPT, FE_DIVBYZERO, FE_INEXACT, FE_INVALID, FE_OVERFLOW,<br>
-                  FE_UNDERFLOW, FE_DOWNWARD, FE_TONEAREST, FE_TOWARDZERO, FE_UPWARD,<br>
-                  FE_DFL_ENV<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cfloat {<br>
-    header "cfloat"<br>
-/*<br>
-    export_macros FLT_EVAL_METHOD, FLT_RADIX, FLT_ROUNDS,<br>
-                  FLT_DIG, FLT_EPSILON, FLT_MANT_DIG,<br>
-                  FLT_MAX, FLT_MAX_10_EXP, FLT_MAX_EXP,<br>
-                  FLT_MIN, FLT_MIN_10_EXP, FLT_MIN_EXP,<br>
-                  DBL_DIG, DBL_EPSILON, DBL_MANT_DIG,<br>
-                  DBL_MAX, DBL_MAX_10_EXP, DBL_MAX_EXP,<br>
-                  DBL_MIN, DBL_MIN_10_EXP, DBL_MIN_EXP,<br>
-                  LDBL_DIG, LDBL_EPSILON, LDBL_MANT_DIG,<br>
-                  LDBL_MAX, LDBL_MAX_10_EXP, LDBL_MAX_EXP,<br>
-                  LDBL_MIN, LDBL_MIN_10_EXP, LDBL_MIN_EXP<br>
-*/<br>
-    export *<br>
-  }<br>
   module chrono {<br>
     header "chrono"<br>
     export *<br>
   }<br>
-  module cinttypes {<br>
-    header "cinttypes"<br>
-    export cstdint<br>
-/*<br>
-    export_macros<br>
-      PRId8, PRId16, PRId32, PRId64, PRIdFAST8, PRIdFAST16, PRIdFAST32, PRIdFAST64, PRIdLEAST8, PRIdLEAST16, PRIdLEAST32, PRIdLEAST64, PRIdMAX, PRIdPTR,<br>
-      PRIi8, PRIi16, PRIi32, PRIi64, PRIiFAST8, PRIiFAST16, PRIiFAST32, PRIiFAST64, PRIiLEAST8, PRIiLEAST16, PRIiLEAST32, PRIiLEAST64, PRIiMAX, PRIiPTR,<br>
-      PRIo8, PRIo16, PRIo32, PRIo64, PRIoFAST8, PRIoFAST16, PRIoFAST32, PRIoFAST64, PRIoLEAST8, PRIoLEAST16, PRIoLEAST32, PRIoLEAST64, PRIoMAX, PRIoPTR,<br>
-      PRIu8, PRIu16, PRIu32, PRIu64, PRIuFAST8, PRIuFAST16, PRIuFAST32, PRIuFAST64, PRIuLEAST8, PRIuLEAST16, PRIuLEAST32, PRIuLEAST64, PRIuMAX, PRIuPTR,<br>
-      PRIx8, PRIx16, PRIx32, PRIx64, PRIxFAST8, PRIxFAST16, PRIxFAST32, PRIxFAST64, PRIxLEAST8, PRIxLEAST16, PRIxLEAST32, PRIxLEAST64, PRIxMAX, PRIxPTR,<br>
-      PRIX8, PRIX16, PRIX32, PRIX64, PRIXFAST8, PRIXFAST16, PRIXFAST32, PRIXFAST64, PRIXLEAST8, PRIXLEAST16, PRIXLEAST32, PRIXLEAST64, PRIXMAX, PRIXPTR,<br>
-      SCNd8, SCNd16, SCNd32, SCNd64, SCNdFAST8, SCNdFAST16, SCNdFAST32, SCNdFAST64, SCNdLEAST8, SCNdLEAST16, SCNdLEAST32, SCNdLEAST64, SCNdMAX, SCNdPTR,<br>
-      SCNi8, SCNi16, SCNi32, SCNi64, SCNiFAST8, SCNiFAST16, SCNiFAST32, SCNiFAST64, SCNiLEAST8, SCNiLEAST16, SCNiLEAST32, SCNiLEAST64, SCNiMAX, SCNiPTR,<br>
-      SCNo8, SCNo16, SCNo32, SCNo64, SCNoFAST8, SCNoFAST16, SCNoFAST32, SCNoFAST64, SCNoLEAST8, SCNoLEAST16, SCNoLEAST32, SCNoLEAST64, SCNoMAX, SCNoPTR,<br>
-      SCNu8, SCNu16, SCNu32, SCNu64, SCNuFAST8, SCNuFAST16, SCNuFAST32, SCNuFAST64, SCNuLEAST8, SCNuLEAST16, SCNuLEAST32, SCNuLEAST64, SCNuMAX, SCNuPTR,<br>
-      SCNx8, SCNx16, SCNx32, SCNx64, SCNxFAST8, SCNxFAST16, SCNxFAST32, SCNxFAST64, SCNxLEAST8, SCNxLEAST16, SCNxLEAST32, SCNxLEAST64, SCNxMAX, SCNxPTR,<br>
-      SCNX8, SCNX16, SCNX32, SCNX64, SCNXFAST8, SCNXFAST16, SCNXFAST32, SCNXFAST64, SCNXLEAST8, SCNXLEAST16, SCNXLEAST32, SCNXLEAST64, SCNXMAX, SCNXPTR<br>
-*/<br>
-    export *<br>
-  }<br>
-  module ciso646 {<br>
-    header "ciso646"<br>
-    export *<br>
-  }<br>
-  module climits {<br>
-    header "climits"<br>
-/*<br>
-    export_macros CHAR_BIT,  CHAR_MIN,  CHAR_MAX,<br>
-                  SCHAR_MIN, SCHAR_MAX, UCHAR_MAX,<br>
-                  SHRT_MIN,  SHRT_MAX,  USHRT_MAX,<br>
-                  INT_MIN,   INT_MAX,   UINT_MAX,<br>
-                  LONG_MIN,  LONG_MAX,  ULONG_MAX,<br>
-                  LLONG_MIN, LLONG_MAX, ULLONG_MAX,<br>
-                  MB_LEN_MAX<br>
-*/<br>
-    export *<br>
-  }<br>
-  module clocale {<br>
-    header "clocale"<br>
-/*<br>
-    export_macros LC_ALL, LC_COLLATE, LC_CTYPE, LC_MONETARY, LC_NUMERIC, LC_TIME, NULL<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cmath {<br>
-    header "cmath"<br>
-/*<br>
-    export_macros FP_FAST_FMA, FP_FAST_FMAF, FP_FAST_FMAL, FP_ILOGBO, FP_ILOGBNAN,<br>
-                  FP_INFINITE, FP_NAN, FP_NORMAL, FP_SUBNORMAL, FP_ZERO,<br>
-                  HUGE_VAL, HUGE_VALF, HUGE_VALL, INFINITY, NAN,<br>
-                  MATH_ERRNO, MATH_ERREXCEPT, math_errhandling<br>
-*/<br>
-    export *<br>
-  }<br>
   module codecvt {<br>
     header "codecvt"<br>
     export *<br>
@@ -497,108 +235,6 @@ module std [system] {<br>
     header "condition_variable"<br>
     export *<br>
   }<br>
-  module csetjmp {<br>
-    header "csetjmp"<br>
-/*<br>
-    export_macros setjmp<br>
-*/<br>
-    export *<br>
-  }<br>
-  module csignal {<br>
-    header "csignal"<br>
-/*<br>
-    export_macros SIGABRT, SIGFPE, SIGILL, SIGINT, SIGSEGV, SIGTERM,<br>
-                  SIG_DFL, SIG_IGN, SIG_ERR<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cstdarg {<br>
-    header "cstdarg"<br>
-/*<br>
-    export_macros va_arg, va_start, va_end, va_copy<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cstdbool {<br>
-    header "cstdbool"<br>
-/*<br>
-    export_macros __bool_true_false_are_defined<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cstddef {<br>
-    header "cstddef"<br>
-/*<br>
-    export_macros NULL, offsetof<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cstdint {<br>
-    header "cstdint"<br>
-/*<br>
-    export_macros<br>
-      INT_8_MIN, INT_8_MAX, UINT_8_MAX, INT_16_MIN, INT_16_MAX, UINT_16_MAX,<br>
-      INT_32_MIN, INT_32_MAX, UINT_32_MAX, INT_64_MIN, INT_64_MAX, UINT_64_MAX,<br>
-      INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX,<br>
-      INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX,<br>
-      INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX,<br>
-      INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,<br>
-      INT_MAX_MIN, INT_MAX_MAX, UINT_MAX_MAX, INT_PTR_MIN, INT_PTR_MAX, UINT_PTR_MAX,<br>
-      PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX,<br>
-      SIZE_MAX<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cstdio {<br>
-    header "cstdio"<br>
-/*<br>
-    export_macros BUFSIZ, EOF, FILENAME_MAX, FOPEN_MAX, L_tmpnam, NULL,<br>
-                  SEEK_CUR, SEEK_END, SEEK_SET, TMP_MAX, _IOFBF, _IOLBF,<br>
-                  stdin, stdout, stderr<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cstdlib {<br>
-    header "cstdlib"<br>
-/*<br>
-    export_macros RAND_MAX<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cstring {<br>
-    header "cstring"<br>
-/*<br>
-    export_macros NULL<br>
-*/<br>
-    export *<br>
-  }<br>
-  module ctgmath {<br>
-    header "ctgmath"<br>
-    export ccomplex<br>
-    export cmath<br>
-    export *<br>
-  }<br>
-  module ctime {<br>
-    header "ctime"<br>
-/*<br>
-    export_macros NULL, CLOCKS_PER_SEC<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cwchar {<br>
-    header "cwchar"<br>
-/*<br>
-    export_macros NULL, WCHAR_MAX, WCHAR_MIN, WEOF<br>
-*/<br>
-    export *<br>
-  }<br>
-  module cwctype {<br>
-    header "cwctype"<br>
-/*<br>
-    export_macros WEOF<br>
-*/<br>
-    export *<br>
-  }<br>
   module deque {<br>
     header "deque"<br>
     export initializer_list<br>
<br>
Added: libcxx/trunk/test/libcxx/modul<wbr>es/cinttypes_exports.sh.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/libcxx/modules/cinttypes_exports.sh.cpp?rev=287435&view=auto" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-pr<wbr>oject/libcxx/trunk/test/libcxx<wbr>/modules/cinttypes_exports.sh.<wbr>cpp?rev=287435&view=auto</a><br>
==============================<wbr>==============================<wbr>==================<br>
--- libcxx/trunk/test/libcxx/modul<wbr>es/cinttypes_exports.sh.cpp (added)<br>
+++ libcxx/trunk/test/libcxx/modul<wbr>es/cinttypes_exports.sh.cpp Fri Nov 18 21:29:03 2016<br>
@@ -0,0 +1,21 @@<br>
+//===------------------------<wbr>------------------------------<wbr>----------------===//<br>
+//<br>
+//                     The LLVM Compiler Infrastructure<br>
+//<br>
+// This file is dual licensed under the MIT and the University of Illinois Open<br>
+// Source Licenses. See LICENSE.TXT for details.<br>
+//<br>
+//===------------------------<wbr>------------------------------<wbr>----------------===//<br>
+<br>
+// REQUIRES: modules-support<br>
+<br>
+// Test that <cinttypes> re-exports <cstdint><br>
+<br>
+// RUN: %build_module<br>
+<br>
+#include <cinttypes><br>
+<br>
+int main() {<br>
+  int8_t x; ((void)x);<br>
+  std::int8_t y; ((void)y);<br>
+}<br>
<br>
Added: libcxx/trunk/test/libcxx/modul<wbr>es/cstdint_exports.sh.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/libcxx/modules/cstdint_exports.sh.cpp?rev=287435&view=auto" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-pr<wbr>oject/libcxx/trunk/test/libcxx<wbr>/modules/cstdint_exports.sh.<wbr>cpp?rev=287435&view=auto</a><br>
==============================<wbr>==============================<wbr>==================<br>
--- libcxx/trunk/test/libcxx/modul<wbr>es/cstdint_exports.sh.cpp (added)<br>
+++ libcxx/trunk/test/libcxx/modul<wbr>es/cstdint_exports.sh.cpp Fri Nov 18 21:29:03 2016<br>
@@ -0,0 +1,21 @@<br>
+//===------------------------<wbr>------------------------------<wbr>----------------===//<br>
+//<br>
+//                     The LLVM Compiler Infrastructure<br>
+//<br>
+// This file is dual licensed under the MIT and the University of Illinois Open<br>
+// Source Licenses. See LICENSE.TXT for details.<br>
+//<br>
+//===------------------------<wbr>------------------------------<wbr>----------------===//<br>
+<br>
+// REQUIRES: modules-support<br>
+<br>
+// Test that <cstdint> re-exports <stdint.h><br>
+<br>
+// RUN: %build_module<br>
+<br>
+#include <cstdint><br>
+<br>
+int main() {<br>
+  int8_t x; ((void)x);<br>
+  std::int8_t y; ((void)y);<br>
+}<br>
<br>
Added: libcxx/trunk/test/libcxx/modul<wbr>es/inttypes_h_exports.sh.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/libcxx/modules/inttypes_h_exports.sh.cpp?rev=287435&view=auto" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-pr<wbr>oject/libcxx/trunk/test/libcxx<wbr>/modules/inttypes_h_exports.<wbr>sh.cpp?rev=287435&view=auto</a><br>
==============================<wbr>==============================<wbr>==================<br>
--- libcxx/trunk/test/libcxx/modul<wbr>es/inttypes_h_exports.sh.cpp (added)<br>
+++ libcxx/trunk/test/libcxx/modul<wbr>es/inttypes_h_exports.sh.cpp Fri Nov 18 21:29:03 2016<br>
@@ -0,0 +1,20 @@<br>
+//===------------------------<wbr>------------------------------<wbr>----------------===//<br>
+//<br>
+//                     The LLVM Compiler Infrastructure<br>
+//<br>
+// This file is dual licensed under the MIT and the University of Illinois Open<br>
+// Source Licenses. See LICENSE.TXT for details.<br>
+//<br>
+//===------------------------<wbr>------------------------------<wbr>----------------===//<br>
+<br>
+// REQUIRES: modules-support<br>
+<br>
+// Test that intypes.h re-exports stdint.h<br>
+<br>
+// RUN: %build_module<br>
+<br>
+#include <inttypes.h><br>
+<br>
+int main() {<br>
+  int8_t x; ((void)x);<br>
+}<br>
<br>
Added: libcxx/trunk/test/libcxx/modul<wbr>es/stdint_h_exports.sh.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/libcxx/modules/stdint_h_exports.sh.cpp?rev=287435&view=auto" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-pr<wbr>oject/libcxx/trunk/test/libcxx<wbr>/modules/stdint_h_exports.sh.<wbr>cpp?rev=287435&view=auto</a><br>
==============================<wbr>==============================<wbr>==================<br>
--- libcxx/trunk/test/libcxx/modul<wbr>es/stdint_h_exports.sh.cpp (added)<br>
+++ libcxx/trunk/test/libcxx/modul<wbr>es/stdint_h_exports.sh.cpp Fri Nov 18 21:29:03 2016<br>
@@ -0,0 +1,20 @@<br>
+//===------------------------<wbr>------------------------------<wbr>----------------===//<br>
+//<br>
+//                     The LLVM Compiler Infrastructure<br>
+//<br>
+// This file is dual licensed under the MIT and the University of Illinois Open<br>
+// Source Licenses. See LICENSE.TXT for details.<br>
+//<br>
+//===------------------------<wbr>------------------------------<wbr>----------------===//<br>
+<br>
+// REQUIRES: modules-support<br>
+<br>
+// Test that int8_t and the like are exported from stdint.h not inttypes.h<br>
+<br>
+// RUN: %build_module<br>
+<br>
+#include <stdint.h><br>
+<br>
+int main() {<br>
+  int8_t x; ((void)x);<br>
+}<br>
<br>
<br>
______________________________<wbr>_________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/cfe-commits</a><br>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>