From 6cf5371d7d55038c0d0789c240813e1be08c0107 Mon Sep 17 00:00:00 2001 From: CiD- Date: Fri, 14 Jan 2022 10:17:49 -0500 Subject: [PATCH 1/2] fix push_back and pop_front --- core/container/queue/queue.odin | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/container/queue/queue.odin b/core/container/queue/queue.odin index ff1e85fbd..feca6934c 100644 --- a/core/container/queue/queue.odin +++ b/core/container/queue/queue.odin @@ -86,7 +86,8 @@ push_back :: proc(q: ^$Q/Queue($T), elem: T) -> bool { if space(q^) == 0 { _grow(q) or_return } - q.data[q.len] = elem + idx := (q.offset+uint(q.len))%builtin.len(q.data) + q.data[idx] = elem q.len += 1 return true } @@ -126,6 +127,7 @@ pop_back_safe :: proc(q: ^$Q/Queue($T)) -> (elem: T, ok: bool) { pop_front :: proc(q: ^$Q/Queue($T), loc := #caller_location) -> (elem: T) { assert(condition=q.len > 0, loc=loc) elem = q.data[q.offset] + q.offset = (q.offset+1)%builtin.len(q.data) q.len -= 1 return } @@ -133,6 +135,7 @@ pop_front :: proc(q: ^$Q/Queue($T), loc := #caller_location) -> (elem: T) { pop_front_safe :: proc(q: ^$Q/Queue($T)) -> (elem: T, ok: bool) { if q.len > 0 { elem = q.data[q.offset] + q.offset = (q.offset+1)%builtin.len(q.data) q.len -= 1 ok = true } From c6ed3fa4b5aca2a5e2b444c6b9cd4f8d2ca8f3e1 Mon Sep 17 00:00:00 2001 From: oskarnp Date: Fri, 14 Jan 2022 10:43:33 -0500 Subject: [PATCH 2/2] Fix invalid linker flags passed to clang on macOS --- src/main.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 9aa9bd2ac..fe56d451f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -485,16 +485,16 @@ i32 linker_stage(lbGenerator *gen) { // NOTE: If you change this (although this minimum is as low as you can go with Odin working) // make sure to also change the 'mtriple' param passed to 'opt' #if defined(GB_CPU_ARM) - " -macosx_version_min 11.0.0 " + " -mmacosx-version-min=11.0.0 " #else - " -macosx_version_min 10.8.0 " + " -mmacosx-version-min=10.8.0 " #endif // This points the linker to where the entry point is " -e _main " #endif , object_files, LIT(output_base), LIT(output_ext), #if defined(GB_SYSTEM_OSX) - "-lSystem -lm -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -L/usr/local/lib", + "-lSystem -lm -Wl,-syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -L/usr/local/lib", #else "-lc -lm", #endif