// RUN: rm -rf %t
// RUN: %clang -fsyntax-only -isystem %S/Inputs/System/usr/include -fmodules -fmodules-cache-path=%t -D__need_wint_t -Werror=implicit-function-declaration %s

// Supplied by compiler, but referenced from the "/usr/include" module map.
@import cstd.float_constants;

float getFltMax() { return FLT_MAX; }

// Supplied by the "/usr/include" module map.
@import cstd.stdio;

void test_fprintf(FILE *file) {
  fprintf(file, "Hello, modules\n");
}

// Supplied by compiler, which forwards to the "/usr/include" version.
@import cstd.stdint;

my_awesome_nonstandard_integer_type value;

// Supplied by the compiler; that version wins.
@import cstd.stdbool;

#ifndef bool
#  error "bool was not defined!"
#endif



