1!===-- module/__fortran_builtins.f90 ---------------------------------------===!
2!
3! Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4! See https://llvm.org/LICENSE.txt for license information.
5! SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6!
7!===------------------------------------------------------------------------===!
8
9! These naming shenanigans prevent names from Fortran intrinsic modules
10! from being usable on INTRINSIC statements, and force the program
11! to USE the standard intrinsic modules in order to access the
12! standard names of the procedures.
13module __Fortran_builtins
14
15  use __Fortran_type_info, only: __builtin_c_ptr, __builtin_c_funptr
16  integer, parameter, private :: int64 = selected_int_kind(18)
17
18  intrinsic :: __builtin_c_f_pointer
19
20  type :: __builtin_event_type
21    integer(kind=int64) :: __count
22  end type
23
24  type :: __builtin_lock_type
25    integer(kind=int64) :: __count
26  end type
27
28  type :: __builtin_team_type
29    integer(kind=int64) :: __id
30  end type
31end module
32