Skip to content

Fix TARGET=clang: avoid redefining mode_t (POSIX type)#15

Open
SteveC wants to merge 2 commits into
moehriegitt:masterfrom
SteveC:master
Open

Fix TARGET=clang: avoid redefining mode_t (POSIX type)#15
SteveC wants to merge 2 commits into
moehriegitt:masterfrom
SteveC:master

Conversation

@SteveC

@SteveC SteveC commented Mar 1, 2026

Copy link
Copy Markdown

Remove typedef of cp_csg2_bool_mode_t as mode_t, which conflicts with the system mode_t on macOS and other platforms. Use cp_csg2_bool_mode_t directly in flatten_eager().

... so it compiles on macos.

Remove typedef of cp_csg2_bool_mode_t as mode_t, which conflicts with
the system mode_t on macOS and other platforms. Use cp_csg2_bool_mode_t
directly in flatten_eager().

Made-with: Cursor
Two causes:
1. Deep CSG tree recursion in cp_csg2_tree_add_layer - replaced with
   iterative traversal using explicit worklist stack.
2. System qsort recursion in cq_slice_add_face - replaced with iterative
   quicksort using explicit stack (O(log n) depth).

Also fix internal.c: use (size_t)-1 for clang -Wimplicit-int-conversion.

Made-with: Cursor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant