Revert Include corecrt.h in stddef.h and vcruntime.h in stdarg.h to improve MS compatibility.

This reverts r360271 (git commit a0933bd8ec)

There are concerns on the review that this breaks EFI builds and that
the transitive includes (sal.h) are actually heavy enough that we might
care.

llvm-svn: 360291
This commit is contained in:
Reid Kleckner 2019-05-08 22:01:20 +00:00
parent 6a85631d87
commit 55fab1ff48
17 changed files with 2 additions and 90 deletions

View File

@ -10,11 +10,6 @@
#ifndef __STDARG_H
#define __STDARG_H
#if defined(_MSC_VER)
/* Include otherwise unneeded header for MSVC compatibility. */
#include <vcruntime.h>
#endif
#ifndef _VA_LIST
typedef __builtin_va_list va_list;
#define _VA_LIST

View File

@ -18,12 +18,6 @@
#if !__has_feature(modules)
#define __STDDEF_H
#endif
#if defined(_MSC_VER)
/* Include otherwise unneeded header for MSVC compatibility. */
#include <corecrt.h>
#endif
#define __need_ptrdiff_t
#define __need_size_t
#define __need_wchar_t

View File

@ -1,5 +0,0 @@
#pragma once
double sqrt(double);
double pow(double, double);
double modf(double, double*);

View File

@ -1,3 +0,0 @@
#pragma once
#define complex _Complex

View File

@ -1,10 +0,0 @@
#pragma once
namespace std
{
struct __numeric_limits_base
{};
template<typename _Tp>
struct numeric_limits : public __numeric_limits_base
{};
}

View File

@ -1,5 +0,0 @@
#pragma once
double sqrt(double);
double pow(double, double);
double modf(double, double*);

View File

@ -1,8 +0,0 @@
#ifndef SETJMP_H
#define SETJMP_H
typedef struct {
int x[42];
} jmp_buf;
#endif

View File

@ -1,19 +0,0 @@
#ifndef STDINT_H
#define STDINT_H
#ifdef __INT32_TYPE__
typedef unsigned __INT32_TYPE__ uint32_t;
#endif
#ifdef __INT64_TYPE__
typedef unsigned __INT64_TYPE__ uint64_t;
#endif
#ifdef __INTPTR_TYPE__
typedef __INTPTR_TYPE__ intptr_t;
typedef unsigned __INTPTR_TYPE__ uintptr_t;
#else
#error Every target should have __INTPTR_TYPE__
#endif
#endif /* STDINT_H */

View File

@ -1,2 +0,0 @@
#pragma once
typedef __SIZE_TYPE__ size_t;

View File

@ -1 +0,0 @@
#pragma once

View File

@ -1 +0,0 @@
#pragma once

View File

@ -1,6 +0,0 @@
#ifndef SYSFLOAT_H
#define SYSFLOAT_H
#define FLT_HAS_SUBNORM 1
#endif /* SYSFLOAT_H */

View File

@ -1 +0,0 @@
// math.h

View File

@ -1,4 +0,0 @@
#ifndef SYS_TGMATH_H
#define SYS_TGMATH_H
#endif /* SYS_TGMATH_H */

View File

@ -2,8 +2,7 @@
// RUN: %clang_cc1 -fsyntax-only -verify -std=c11 %s
// RUN: %clang_cc1 -fsyntax-only -verify -std=c11 -fmodules -fmodules-cache-path=%t %s -D__STDC_WANT_LIB_EXT1__=1
// RUN: %clang_cc1 -fsyntax-only -verify -std=c11 -ffreestanding %s
// RUN: %clang_cc1 -fsyntax-only -verify -std=c11 -triple i686-pc-win32 \
// RUN: -fms-compatibility-version=17.00 -isystem %S/Inputs/ms-crt %s
// RUN: %clang_cc1 -fsyntax-only -verify -std=c11 -triple i686-pc-win32 -fms-compatibility-version=17.00 %s
noreturn int f(); // expected-error 1+{{}}

View File

@ -1,10 +0,0 @@
// RUN: %clang_cc1 -fsyntax-only --show-includes -triple i686-pc-win32 \
// RUN: -isystem %S/Inputs/ms-crt -fms-compatibility-version=17.00 %s \
// RUN: | FileCheck %s
#include <stddef.h>
// CHECK: including file:{{.*}}stddef.h
// CHECK: including file:{{.*}}corecrt.h
#include <stdarg.h>
// CHECK: including file:{{.*}}stdarg.h
// CHECK: including file:{{.*}}vcruntime.h

View File

@ -1,5 +1,4 @@
// RUN: %clang_cc1 -fsyntax-only -triple i686-pc-win32 -fms-compatibility \
// RUN: -isystem %S/Inputs/ms-crt -fms-compatibility-version=17.00 %s
// RUN: %clang_cc1 -fsyntax-only -triple i686-pc-win32 -fms-compatibility -fms-compatibility-version=17.00 %s
// RUN: %clang_cc1 -fsyntax-only -triple i386-mingw32 %s
// Something in MSVC's headers (pulled in e.g. by <crtdefs.h>) defines __null