Skip to content

Fix memmove()#16

Open
zturtleman wants to merge 1 commit intodrh:masterfrom
zturtleman:memmove
Open

Fix memmove()#16
zturtleman wants to merge 1 commit intodrh:masterfrom
zturtleman:memmove

Conversation

@zturtleman
Copy link
Copy Markdown

[The lcc source] overrides the libc memmove() with its own implementation,
but that implementation fails to follow the specification. In particular,
it returns NULL rather than memmove()'s first parameter.

GCC now optimizes based on this aspect of the specification, so things go
wrong at runtime.

[Text & patch from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56881#c8]

[The lcc source] overrides the libc memmove() with its own implementation,
but that implementation fails to follow the specification. In particular,
it returns NULL rather than memmove()'s first parameter.

GCC now optimizes based on this aspect of the specification, so things go
wrong at runtime.

[Text & patch from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56881#c8]
ibara pushed a commit to ibara/LiteBSD-Ports that referenced this pull request Feb 23, 2016
AJBats added a commit to AJBats/saturncc that referenced this pull request Apr 18, 2026
Archive the sanitize-phase checklist as TODO_sanitize.md (history
intact via git mv) and create a fresh TODO.md scoped to tier-1
byte-match. Starting state: 1 byte-identical (drh#8), 2 pinned with
non-zero baselines (drh#16=438, #179=26), 6 Gap 18 skips, 187 unmeasured.
Workflow points at asmdiff.sh for review, validate_byte_match.sh pin
for gating, and flags Gap 15 void-sanitized functions (#135/#136/#183/#188)
for r0:r1 return-convention reconstruction.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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