fix(argv): use inline(always) for get_args to preserve RSP #76
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
get_args()was marked#[inline(never)]which caused the function call to push a return address onto the stack before reading[rsp]. This meant programs reading argv (likecat) would read the return address as argc instead of the actual argument count, causing crashes.Changes
#[inline(never)]to#[inline(always)]inlibs/libbreenix/src/argv.rs.claude/settings.json,.claude/skills/os-research/)Test plan
cat /hello.txtshould now work in the interactive shell🤖 Generated with Claude Code