6 #ifndef bootstrap_header_included
7 #define bootstrap_header_included
36 #define DOUBLE_LENGTH 8
37 #define COMPLEX_LENGTH 8
38 #define DCOMPLEX_LENGTH 16
46 int number_of_conversion;
47 int number_of_simplication;
struct _newgen_struct_expression_ * expression
void const char const char const int
bool check_loop_range(range, hash_table)
type_checker.c
void register_intrinsic_type_descriptor(IntrinsicDescriptor *)
This function is called one time (at the very beginning) to create all intrinsic functions.
entity MakeIoFileArray(entity)
This array is pointed by FILE * pointers returned or used by fopen, fclose,...
expression insert_cast(basic cast, basic, expression, type_context_p)
Function in type_checker.c.
type longlonginteger_to_overloaded_type(int)
MB.
void CreateAreas(void)
cproto-generated files
expression cast_constant(expression, basic, type_context_p)
typing_function_t get_typing_function_for_intrinsic(const char *)
entity FindOrMakeDefaultIntrinsic(string, int)
Create a default intrinsic.
struct IntrinsicDescriptor IntrinsicDescriptor
The following data structure describes an intrinsic function: its name and its arity and its type,...
struct type_context_t * type_context_p
void typing_of_expressions(string, statement)
parameter MakeVoidParameter(void)
entity FindOrMakeIntrinsic(string, int, type(*)(int))
This function creates an entity that represents an intrinsic function, if the entity does not already...
type void_to_overloaded_type(int)
value MakeValueLitteral(void)
type integer_to_void_type(int)
type MakeVoidResult(void)
Move the following functions to ri-util/type.c.
basic(* typing_function_t)(call, type_context_p)
string MakeFileName(char *, char *, char *)
void(* switch_name_function)(expression, type_context_p)
call convert_constant(call, basic)
type pointer_to_overloaded_type(int)
type integer_to_overloaded_type(int)
void type_loop_range(basic, range, type_context_p)
bool arguments_are_compatible(call, hash_table)
void CreateIntrinsics(set)
type overloaded_to_void_type(int)
bool type_checker(const string)
switch_name_function get_switch_name_function_for_intrinsic(const char *)
type longinteger_to_overloaded_type(int)
MB.
type void_to_integer_type(int)
struct _newgen_struct_type_ * type
struct _newgen_struct_call_ * call
struct _newgen_struct_basic_ * basic
The following data structure describes an intrinsic function: its name and its arity and its type,...
type(* intrinsic_type)(int)
switch_name_function name_function
typing_function_t type_function
FI: I do not understand why the type is duplicated at the set level.
context for type checking.