// -*- C++ -*-
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

export {
  using ::FILE _LIBCPP_USING_IF_EXISTS;
  using ::fpos_t _LIBCPP_USING_IF_EXISTS;
  using ::size_t _LIBCPP_USING_IF_EXISTS;

  using ::clearerr _LIBCPP_USING_IF_EXISTS;
  using ::fclose _LIBCPP_USING_IF_EXISTS;
  using ::feof _LIBCPP_USING_IF_EXISTS;
  using ::ferror _LIBCPP_USING_IF_EXISTS;
  using ::fflush _LIBCPP_USING_IF_EXISTS;
  using ::fgetc _LIBCPP_USING_IF_EXISTS;
  using ::fgetpos _LIBCPP_USING_IF_EXISTS;
  using ::fgets _LIBCPP_USING_IF_EXISTS;
  using ::fopen _LIBCPP_USING_IF_EXISTS;
  using ::fprintf _LIBCPP_USING_IF_EXISTS;
  using ::fputc _LIBCPP_USING_IF_EXISTS;
  using ::fputs _LIBCPP_USING_IF_EXISTS;
  using ::fread _LIBCPP_USING_IF_EXISTS;
  using ::freopen _LIBCPP_USING_IF_EXISTS;
  using ::fscanf _LIBCPP_USING_IF_EXISTS;
  using ::fseek _LIBCPP_USING_IF_EXISTS;
  using ::fsetpos _LIBCPP_USING_IF_EXISTS;
  using ::ftell _LIBCPP_USING_IF_EXISTS;
  using ::fwrite _LIBCPP_USING_IF_EXISTS;
  using ::getc _LIBCPP_USING_IF_EXISTS;
  using ::getchar _LIBCPP_USING_IF_EXISTS;
  using ::perror _LIBCPP_USING_IF_EXISTS;
  using ::printf _LIBCPP_USING_IF_EXISTS;
  using ::putc _LIBCPP_USING_IF_EXISTS;
  using ::putchar _LIBCPP_USING_IF_EXISTS;
  using ::puts _LIBCPP_USING_IF_EXISTS;
  using ::remove _LIBCPP_USING_IF_EXISTS;
  using ::rename _LIBCPP_USING_IF_EXISTS;
  using ::rewind _LIBCPP_USING_IF_EXISTS;
  using ::scanf _LIBCPP_USING_IF_EXISTS;
  using ::setbuf _LIBCPP_USING_IF_EXISTS;
  using ::setvbuf _LIBCPP_USING_IF_EXISTS;
  using ::snprintf _LIBCPP_USING_IF_EXISTS;
  using ::sprintf _LIBCPP_USING_IF_EXISTS;
  using ::sscanf _LIBCPP_USING_IF_EXISTS;
  using ::tmpfile _LIBCPP_USING_IF_EXISTS;
  using ::tmpnam _LIBCPP_USING_IF_EXISTS;
  using ::ungetc _LIBCPP_USING_IF_EXISTS;
  using ::vfprintf _LIBCPP_USING_IF_EXISTS;
  using ::vfscanf _LIBCPP_USING_IF_EXISTS;
  using ::vprintf _LIBCPP_USING_IF_EXISTS;
  using ::vscanf _LIBCPP_USING_IF_EXISTS;
  using ::vsnprintf _LIBCPP_USING_IF_EXISTS;
  using ::vsprintf _LIBCPP_USING_IF_EXISTS;
  using ::vsscanf _LIBCPP_USING_IF_EXISTS;

} // export
