Add -default-to-nil-allocator flag (sets ODIN_DEFAULT_TO_NIL_ALLOCATOR)

This commit is contained in:
gingerBill
2020-09-15 12:27:53 +01:00
parent bfc7d74967
commit edbad0709e
4 changed files with 13 additions and 3 deletions

View File

@@ -580,6 +580,8 @@ enum BuildFlagKind {
BuildFlag_IgnoreUnknownAttributes,
BuildFlag_ExtraLinkerFlags,
BuildFlag_DefaultToNilAllocator,
BuildFlag_Compact,
BuildFlag_GlobalDefinitions,
BuildFlag_GoToDefinitions,
@@ -676,6 +678,8 @@ bool parse_build_flags(Array<String> args) {
add_flag(&build_flags, BuildFlag_IgnoreUnknownAttributes, str_lit("ignore-unknown-attributes"), BuildFlagParam_None);
add_flag(&build_flags, BuildFlag_ExtraLinkerFlags, str_lit("extra-linker-flags"), BuildFlagParam_String);
add_flag(&build_flags, BuildFlag_DefaultToNilAllocator, str_lit("default-to-nil-allocator"), BuildFlagParam_None);
add_flag(&build_flags, BuildFlag_Compact, str_lit("compact"), BuildFlagParam_None);
add_flag(&build_flags, BuildFlag_GlobalDefinitions, str_lit("global-definitions"), BuildFlagParam_None);
add_flag(&build_flags, BuildFlag_GoToDefinitions, str_lit("go-to-definitions"), BuildFlagParam_None);
@@ -1099,6 +1103,10 @@ bool parse_build_flags(Array<String> args) {
build_context.extra_linker_flags = value.value_string;
break;
case BuildFlag_DefaultToNilAllocator:
build_context.ODIN_DEFAULT_TO_NIL_ALLOCATOR = true;
break;
case BuildFlag_Compact:
if (!build_context.query_data_set_settings.ok) {
gb_printf_err("Invalid use of -compact flag, only allowed with 'odin query'\n");
@@ -1685,7 +1693,7 @@ int main(int arg_count, char const **arg_ptr) {
#endif
} else if (command == "version") {
gb_printf("%.*s version %.*s", LIT(args[0]), LIT(ODIN_VERSION));
#ifdef NIGHTLY
gb_printf("-nightly");
#endif
@@ -1693,7 +1701,7 @@ int main(int arg_count, char const **arg_ptr) {
#ifdef GIT_SHA
gb_printf("-%s", GIT_SHA);
#endif
gb_printf("\n");
return 0;
} else {