Skip to content

builds with Fil-C#802

Merged
lemire merged 5 commits into
masterfrom
cfil
Apr 22, 2026
Merged

builds with Fil-C#802
lemire merged 5 commits into
masterfrom
cfil

Conversation

@lemire
Copy link
Copy Markdown
Member

@lemire lemire commented Apr 22, 2026

This PR adds support for building CRoaring with Fil-C, the memory-safe C compiler.

Fil-C instruments code for runtime memory safety (bounds checking, use-after-free prevention, etc.) via invisible capabilities and concurrent GC. While highly compatible, it is stricter than regular Clang/GCC in several areas, especially around:

  • Runtime CPU feature detection / dynamic dispatch
  • Inline assembly

Changes

  • Use special code for CPU dispatching when building with Fil-C.

  • Disable or wrap inline assembly that Fil-C cannot safely instrument.
    Most of the hand-written SIMD assembly (AVX2/AVX-512) is now skipped under Fil-C.

  • Fix several warnings and minor issues unrelated Fil-C.

@lemire lemire changed the title builds with cfil builds with Fil-C Apr 22, 2026
Comment thread include/roaring/misc/configreport.h
Copy link
Copy Markdown

@pizlonator pizlonator left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

Comment thread src/roaring64.c
@lemire
Copy link
Copy Markdown
Member Author

lemire commented Apr 22, 2026

@pizlonator In our next release, we shall support building CRoaring with Fil-C.

Ideally, we would have CI tests. But... it should be trivial from now.

@lemire lemire merged commit fea7073 into master Apr 22, 2026
32 of 33 checks passed
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.

2 participants