From 70ce878dfb1b6068d5ceb9c14a08a32f0394db78 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Tue, 4 Apr 2023 12:11:12 +0100 Subject: Add `-max-error-count:` --- src/build_settings.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/build_settings.cpp') diff --git a/src/build_settings.cpp b/src/build_settings.cpp index 0aa9977a5..ac033df71 100644 --- a/src/build_settings.cpp +++ b/src/build_settings.cpp @@ -7,6 +7,8 @@ // #define DEFAULT_TO_THREADED_CHECKER // #endif +#define DEFAULT_MAX_ERROR_COLLECTOR_COUNT (36) + enum TargetOsKind : u16 { TargetOs_Invalid, @@ -313,6 +315,8 @@ struct BuildContext { RelocMode reloc_mode; bool disable_red_zone; + isize max_error_count; + u32 cmd_doc_flags; Array extra_packages; @@ -344,6 +348,14 @@ gb_internal bool global_ignore_warnings(void) { return build_context.ignore_warnings; } +gb_internal isize MAX_ERROR_COLLECTOR_COUNT(void) { + if (build_context.max_error_count <= 0) { + return DEFAULT_MAX_ERROR_COLLECTOR_COUNT; + } + return build_context.max_error_count; +} + + gb_global TargetMetrics target_windows_i386 = { TargetOs_windows, @@ -1081,6 +1093,10 @@ gb_internal void init_build_context(TargetMetrics *cross_target) { bc->ODIN_VERSION = ODIN_VERSION; bc->ODIN_ROOT = odin_root_dir(); + if (bc->max_error_count <= 0) { + bc->max_error_count = DEFAULT_MAX_ERROR_COLLECTOR_COUNT; + } + { char const *found = gb_get_env("ODIN_ERROR_POS_STYLE", permanent_allocator()); if (found) { -- cgit v1.2.3