Skip to content

fix gcc compilation on linux#8

Closed
Bais wants to merge 1 commit into
GaijinEntertainment:masterfrom
Bais:fix-gcc
Closed

fix gcc compilation on linux#8
Bais wants to merge 1 commit into
GaijinEntertainment:masterfrom
Bais:fix-gcc

Conversation

@Bais
Copy link
Copy Markdown

@Bais Bais commented Jan 24, 2019

No description provided.

@Bais Bais closed this Jan 24, 2019
@Bais Bais reopened this Jan 24, 2019
@Bais Bais closed this Jan 24, 2019
borisbat pushed a commit that referenced this pull request Jun 1, 2020
AndreiPotapov pushed a commit to AndreiPotapov/daScript that referenced this pull request Sep 23, 2022
borisbat added a commit that referenced this pull request Apr 27, 2026
* Member-level baseline diff (#8, #10): the previous canonical-set
  diff couldn't tell "this canonical was in baseline already" from
  "this canonical is new", so the documented "growth" case (an
  existing canonical gaining a new member) was silently dropped, and
  --baseline-strict became a no-op (every kept cluster's canonical
  was necessarily new).

  load_baseline_canonicals now also populates a `members` table keyed
  by `file:line:name`. tag_baseline_new_members tags records whose
  member identity is absent from baseline, so:
    - default: surfaces brand-new canonicals AND growth on existing
      canonicals.
    - --baseline-strict: post-filters clusters whose canonical was
      already in baseline, leaving only fully-new canonicals.

  Trade-off: file edits that shift line numbers will look like "new
  members" — acceptable since touched code is the right default to
  re-check for CI gating. README updated with the explicit caveat.

  End-to-end smoke confirms both modes:
    baseline=alpha-only, scan adds beta with same canonical →
      default --check exits 1, surfaces the {alpha,beta} cluster
      strict --check exits 0, cluster dropped (canonical existed)

* Drop the per-candidate `top` heuristic (#9): `cfg.top == 20 ? 5 :
  cfg.top` couldn't distinguish "user passed --top 20" from "default
  is 20", so explicit --top 20 was silently downgraded to 5 in
  --against mode. Use cfg.top directly in both writers; same flag
  applies to both modes.

Tests: existing 54-case suite updated for the new
load_baseline_canonicals signature (3 args + members table). New
assertions in test_baseline_load_canonical_set verify the members
table contains all 3 entries (including the duplicate-canonical "c"
member, which is the growth-detection case).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
borisbat added a commit that referenced this pull request May 12, 2026
CI: revert the mouse_events module extraction from round 1. daspkg's
exe build treats live/glfw_live as a shared module
(dasModuleGlfw.shared_module) and rejected the require of a
native-path-only mouse_events ("error[20115]: Shared module glfw_live
has incorrect dependency type. Can't require mouse_events because its
not shared"). Put MouseEventWire + sort_play_events back inline in
glfw_live.das; drop the mouse_events.das file, the .das_module
register_native_path, and the tests/dasglfw entries in
tests/aot/CMakeLists.txt. The regression test under tests/dasglfw/
is now self-contained -- it mirrors the wire-event shape with a local
struct and verifies the same sort + less-than comparator lands
t_ms-ascending, so no glfw_live require chain is needed.

#8 mouse_play button branch validates action in {"press", "release"}
the same way mouse_click does. Invalid strings return a structured
error instead of silently flipping to release.

#9 dropped the "Stable-sort" claim from sort_play_events' docstring
and from the test -- daslang's sort is qsort, not stable. The test
now uses distinct t_ms values (no ties), asserting only the
non-decreasing-t_ms invariant mouse_play depends on.

#10 record_tick now deletes the per-frame pixels buffer at end of
function. Local var array doesn't finalize on scope exit, so the
heap was growing by width*height*4 bytes per captured frame.

#11 stbi_apng_frame docstring now states the writer expects bottom-up
row order (glReadPixels output) and flips internally, so callers
don't double-flip.

#12 write_chunk + the acTL backpatch fold the chunk type + body into
an incremental byte-table CRC32 instead of memcpy'ing the whole body
into a temporary vector. Removes the per-chunk peak-memory doubling.
12/12 APNG tests pass (CRC sanity verified through chunk-parse round
trip).

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