Compiler module

Build_Options

structSource

Fields

output_type: := Output_Type.EXECUTABLE
Commonly_Propagated: struct { write_added_strings := true; runtime_storageless_type_info := false; shorten_filenames_in_error_messages := false; use_visual_studio_message_format := false; use_natvis_compatible_types := false; minimum_os_version: Os_Version; lazy_foreign_function_lookups := false; disable_redzone := false; enable_bytecode_inliner := true; enable_bytecode_deduplication := true; stack_trace := true; use_ansi_color := true; interactive_bytecode_debugger := false; debug_for_expansions := false; enable_frame_pointers := true; runtime_support_definitions: enum u8 { AUTO; ENTRY_POINT_AND_INIT; ONLY_INIT; OMIT; } = .AUTO; backtrace_on_crash: enum u8 { OFF; ON; } = .ON; array_bounds_check: enum u8 { OFF; ON; ALWAYS; } = .ON; cast_bounds_check: enum u8 { OFF; NONFATAL; FATAL; } = .FATAL; null_pointer_check: enum u8 { OFF; ON; } = .ON; arithmetic_overflow_check: enum u8 { OFF; NONFATAL; FATAL; } = .OFF; dead_code_elimination: enum u8 { NONE; ALL; MODULES_ONLY; } = .MODULES_ONLY; max_bytecode_instructions_for_inlined_initializer: s32 = 8; context_size_max: s32 = 4096; prevent_compile_time_calls_from_runtime := false; info_flags: enum_flags u32 { POLYMORPH_MATCH :: 0x1; POLYMORPH_DEDUPLICATE :: 0x2; } text_output_flags: enum_flags u32 { OUTPUT_LINK_LINE :: 0x1; OUTPUT_TIMING_INFO :: 0x2; } = xx 3; os_target := OS; cpu_target := CPU; backend: enum u32 { X64; LLVM; } = .LLVM; machine_options: [MACHINE_OPTIONS_SIZE] u8; emit_debug_info: enum u32 { NONE :: 0; DWARF :: 1; CODEVIEW :: 2; DEFAULT :: 3; } = .DEFAULT; maximum_polymorph_depth := 100; maximum_array_count_before_compile_time_returns_are_not_reflected_in_ast := 5000; x64_options: X64_Options; llvm_options: Llvm_Options; }
output_executable_name: string
output_path: string
intermediate_path: string
entry_point_name: string
compile_time_command_line: [] string
append_executable_filename_extension: := true
temporary_storage_size: s32
import_path: [] string
additional_linker_arguments: [] string
user_data_u64: u64
user_data_string: string
user_data_pointer: *void
user_data_pointer_size: s32

See also