All resolved (3927)
Every ticket in done/, newest first by the most
recent date in each ticket's log.
- 2026-09-30 — regression: test-threads#src:test/test_tls_base.pas at 165473bf9e30 in step 2/27, `tools/expect_same.sh test_tls_base26 "$(/tmp/test_tls_base26)" "$(printf 'errors=0\nTLS OK')"` (auto-filed by twatch)
- 2026-09-22 — regression: test-nilpy#src:test/test_nilpy_float_repr_roundtrip.npy at 3daf4bc16cc1 in step 1/4, `./compiler/pascal26 test/test_nilpy_float_repr_roundtrip.npy /tmp/test_nilpy_float_repr26` (auto-filed by twatch)
- 2026-09-22 — The NilPy `print()` promo argument temp is never zero-initialised, and the cleanup path releases it
- 2026-09-22 — `--dce --emit-obj` emits an ESP IRAM object that segfaults the linker
- 2026-09-22 — `--dce` on a C program miscompiles on every cross target
- 2026-09-22 — A promotable int at exactly Low(Int64) prints as `-` under `%d`
- 2026-09-22 — riscv32 DCE keeps 135 more bodies than xtensa on one program
- 2026-09-22 — The xtensa raw-ISR install has no vecbase write and no ISR stack
- 2026-09-22 — regression: test-emit-obj#src:tools/compiler_srchash.sh at 387782d9166f in step 106/589, `PXX=./compiler/pascal26 tools/reloc_resolve_check.py arm32 test/reloc_resolve_probe.c` (auto-filed by twatch)
- 2026-09-22 — A variant comparison heap-allocates a box per evaluation
- 2026-09-22 — `native` and `full` are both never-green, and that is where the resemblance ends
- 2026-09-22 — regression: test-riscv32#src:test/cunsigned_semantics_sweep_b138.c@2 at c194231297b1 in step 20/33, `sz=$(sed -n 's/.*code=\([0-9]*\)B.*/\1/p' /tmp/rv32_bigbody.log); \ test -n "$sz" && test "$sz" -gt 1048576 || \ { echo…` (auto-filed by twatch)
- 2026-09-22 — What
- 2026-09-22 — Two code-to-code references are unrecorded, and are safe only by where they sit
- 2026-09-22 — A missing attribute on a scalar returned by a CALL segfaults instead of raising
- 2026-09-21 — What
- 2026-09-21 — No CSR/special-register write is expressible, so no raw ISR can be installed
- 2026-09-21 — bug-n-a-run-time-dispatched-call-s-result-is-coerced-to-an-integer
- 2026-09-21 — What was measured
- 2026-09-21 — regression: test-threads#src:test/test_threadsafe_heap_lock_deadlock_diag.pas at aa43f495ab87 in step 2/13, `out=$(timeout 60 /tmp/test_ts_hl_diag26 2>&1); rc=$?; \ tools/expect_same.sh test_ts_hl_diag26_exit "$rc" "212" && \ to…` (auto-filed by twatch)
- 2026-09-21 — random.Random is absent; the folding makes it look like an arity error
- 2026-09-21 — regression: test-threads#src:test/test_sys_intrinsic_as_argument.pas at 5745f9f8f1f8 in step 8/20, `tools/expect_same.sh test_trunc26.1 "$( (trap '' XFSZ; ulimit -f 40; ./compiler/pascal26 test/hello.pas /tmp/test_trunc…` (auto-filed by twatch)
- 2026-09-21 — The watcher's auto-close copies a ticket into `done/` and leaves the original
- 2026-09-21 — bug-n-a-dynamically-dispatched-call-loses-its-return-kind-when-it-is-returned
- 2026-09-21 — regression: test-core#src:test/test_fpc_mem_errors.pas at ab8d550f2420 in step 3/3, `for m in nilread nilwrite nilproc nilmethod wildstore; do \ out=$(/tmp/test_fpc_mem_errors26 $m 2>&1); rc=$?; \ test "$…` (auto-filed by twatch)
- 2026-09-21 — An `interrupt;` proc reached through a normal call returns via `mret`, silently
- 2026-09-21 — bug-n-a-def-returning-split-on-an-unannotated-receiver-is-typed-a-string
- 2026-09-21 — Three different `PXXDynSetLen` bodies are visible at once on every ESP ISA
- 2026-09-21 — `render_backend.py` does not finish compiling
- 2026-09-21 — A def returning a multi-hop attribute chain is typed by the hop before last
- 2026-09-21 — A NilPy def has no native-ABI entry point to hand to a C callback
- 2026-09-21 — `--dce` under `--emit-obj` crashes a two-object i386 link before main
- 2026-09-20 — A bare read of a method as a value yields a garbage code address
- 2026-09-20 — A one-element unpack target binds nothing
- 2026-09-20 — A capturing nested def into a procedural slot segfaults with no diagnostic
- 2026-09-20 — A Pascal function handed to a procedural parameter from NilPy is not a code address
- 2026-09-20 — What is wrong
- 2026-09-20 — bug-n-a-tuple-unpack-target-is-typed-as-the-tuple-not-as-its-element
- 2026-09-20 — A nested import guard compiles the arm the program excluded
- 2026-09-20 — regression: test-core#src:test/test_platform_defines.pas@2 at d250db9d3678 in step 2/2, `tools/expect_same.sh test_platform_defines_esp26 "$(/tmp/test_platform_defines_esp26)" "$(printf 'platform=esp\nend')"` (auto-filed by twatch)
- 2026-09-20 — No `wave` module — and TSP's import of it is unguarded
- 2026-09-20 — What is wrong
- 2026-09-20 — A same-named field in an unrelated class defeats a property setter
- 2026-09-20 — The NilPy heap arena is 64 KiB of dead SRAM on the ESP-IDF profile
- 2026-09-20 — bug-n-a-variant-field-is-claimed-as-the-callee-of-an-open-world-call-with-no-runtime-class-test
- 2026-09-19 — bug-n-a-method-that-calls-a-method-with-a-list-argument-loses-its-own-result
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_variant_method_pick_by_arity.npy at 67f0878f2e59 in step 2/4, `tools/expect_same.sh test_nilpy_arity26 "$(/tmp/test_nilpy_arity26)" "$(printf '42\n1')"` (auto-filed by twatch)
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_annotated_class_attribute.npy at 67f0878f2e59 in step 2/2, `/tmp/test_nilpy_annotated_class_attribute26 | diff -u test/test_nilpy_annotated_class_attribute.expected -` (auto-filed by twatch)
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_for_getitem_protocol.npy at 67f0878f2e59 in step 2/7, `/tmp/test_nilpy_gip26 | diff -u test/test_nilpy_for_getitem_protocol.expected -` (auto-filed by twatch)
- 2026-09-19 — A method call cannot take an argument after a `*` unpack
- 2026-09-19 — regression: lib-test#src:test/lib_mimic_xml_sax_xmlreader.npy at 2b2ec3fee1c5 in step 2/10, `tools/expect_same.sh lib_mimic_xmlreader.1 "$(/tmp/lib_mimic_xmlreader | grep -c '=ok')" "25"` (auto-filed by twatch)
- 2026-09-19 — The divergence
- 2026-09-19 — bug-b-gl-triangle-demo-imports-gl-from-libgl-c-so-which-does-not-exist
- 2026-09-19 — PIL is a Python surface over the RTL PNG decoder, not a new decoder
- 2026-09-19 — Unaligned packed-record field access faults on xtensa
- 2026-09-19 — The ESP32 bare image doubled in code and grew half again in bss
- 2026-09-19 — first-ever red: lib-test#src:test/test_nilpy_format_and_set_do_not_leak_a_temporary_list_per_call.npy at 5c7d6d650e5d in step 2/6, `tools/expect_same.sh test_nilpy_noleak "$(/tmp/test_nilpy_noleak | tail -n 1)" "PYLEAK OK"` (auto-filed by twatch)
- 2026-09-19 — wasm32 picks signed division for an unsigned 64-bit value
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_delitem_dunder.npy at 67f0878f2e59 in step 2/5, `/tmp/test_nilpy_delitem26 | diff -u test/test_nilpy_delitem_dunder.expected -` (auto-filed by twatch)
- 2026-09-19 — A bare `__thread` at block scope compiles to a garbage stack local
- 2026-09-19 — DCE drops a called body on the riscv32 IDF profile
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_not_subscriptable.npy at 67f0878f2e59 in step 2/3, `/tmp/test_nilpy_notsub26 | diff -u test/test_nilpy_not_subscriptable.expected -` (auto-filed by twatch)
- 2026-09-19 — regression: test-core#src:test/test_nilpy_star_methods_and_targets.npy at 18f97d8f5f1f in step 1/2, `./compiler/pascal26 test/test_nilpy_star_methods_and_targets.npy /tmp/test_nilpy_starm26` (auto-filed by twatch)
- 2026-09-19 — How it was found
- 2026-09-19 — CHAIN STATE 2026-09-10, after 967f9cc93
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_to_bytes.npy at 5dbee723e228 in step 2/4, `tools/expect_same.sh test_nilpy_to_bytes26 "$(/tmp/test_nilpy_to_bytes26)" "$(printf '8\n10\n0\n10\n254\n255\n-2\n255\n…` (auto-filed by twatch)
- 2026-09-19 — Six reentrant variants are absent, not merely unused
- 2026-09-19 — A binop over two attribute reads of a local instance segfaults
- 2026-09-19 — bug-a-something-in-lekkerzeilen-s-startup-still-leaves-an-exception-frame-on-the-chain
- 2026-09-19 — xtensa variant-record arms start at different offsets
- 2026-09-19 — bug-n-from-a-package-import-a-submodule-binds-nothing
- 2026-09-19 — The measurement
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_import_zlib.npy at 814fe90dfb65 in step 1/10, `./compiler/pascal26 test/test_nilpy_import_zlib.npy /tmp/test_nilpy_import_zlib26` (auto-filed by twatch)
- 2026-09-19 — `@obj.Method` is typed `Pointer`, so it cannot be passed as a `TMethod`
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_attribute_off_a_virtual_call_result.npy at 7e4f69a34350 in step 5/8, `out=$(./compiler/pascal26 test/test_nilpy_qualified_name_error_names_the_receiver.npy /tmp/test_nilpy_qualrecv26 2>&1);…` (auto-filed by twatch)
- 2026-09-19 — bug-n-a-dynamically-dispatched-call-fills-its-defaults-from-another-class-signature
- 2026-09-19 — pxx cannot link its own objects
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_dunder_getitem_setitem.npy at 67f0878f2e59 in step 2/4, `tools/expect_same.sh test_nilpy_dundergetset26 "$(/tmp/test_nilpy_dundergetset26)" "$(printf '%b' '20\n99\n[10, 99, 30]…` (auto-filed by twatch)
- 2026-09-19 — errno is one global, not one per thread
- 2026-09-19 — `__name__` on a BUILTIN type is unimplemented
- 2026-09-19 — An attribute on a SCALAR receiver answers a garbage value instead of raising AttributeError
- 2026-09-19 — xtensa: an exception landing pad cannot reach past 128 KiB
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_import_c_header_still_works.npy at 25b8325d4b83 in step 1/2, `./compiler/pascal26 test/test_nilpy_import_c_header_still_works.npy /tmp/test_nilpy_imphdr26` (auto-filed by twatch)
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_bytearray_unbound_and_subclass.npy at b4104386ae9c in step 1/24, `./compiler/pascal26 test/test_nilpy_bytearray_unbound_and_subclass.npy /tmp/test_nilpy_baunbound26` (auto-filed by twatch)
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_import_sqlite.npy at 42d05b7c18c7 in step 1/11, `./compiler/pascal26 test/test_nilpy_import_sqlite.npy /tmp/test_nilpy_import_sqlite26` (auto-filed by twatch)
- 2026-09-19 — Repro (17 lines, CPython prints `tag`)
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_sqlite_crud.npy at 42d05b7c18c7 in step 1/14, `./compiler/pascal26 test/test_nilpy_sqlite_crud.npy /tmp/test_nilpy_sqlite_crud26` (auto-filed by twatch)
- 2026-09-19 — The 32-bit `va_arg` set is complete only because two targets cannot compile C
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_str_line_continuation.npy at 11e0c581c80d in step 4/5, `/tmp/test_nilpy_linecont26 | diff -u test/test_nilpy_line_continuation.expected -` (auto-filed by twatch)
- 2026-09-19 — A block-scope `extern` is read as an expression
- 2026-09-19 — regression: test-threads#src:test/test_tls_base.pas at bd35a383c7c2 in step 2/13, `tools/expect_same.sh test_tls_base26 "$(/tmp/test_tls_base26)" "$(printf 'errors=0\nTLS OK')"` (auto-filed by twatch)
- 2026-09-19 — `or` and a conditional expression are refused inside a subscript and accepted outside it
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_getitem_on_a_call_result.npy at 67f0878f2e59 in step 2/2, `/tmp/test_nilpy_getitemcall26 | diff -u test/test_nilpy_getitem_on_a_call_result.expected -` (auto-filed by twatch)
- 2026-09-19 — `solitaire_gui` runs its event loop and never creates a toplevel
- 2026-09-19 — Hosted C on wasm32: environ and va_arg
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_open_world_method_dispatch.npy at 67f0878f2e59 in step 2/7, `/tmp/test_nilpy_openworld26 | diff -u test/test_nilpy_open_world_method_dispatch.expected -` (auto-filed by twatch)
- 2026-09-19 — The xtensa IDF profile still silences Write and busy-parks at exit
- 2026-09-19 — regression: test-core#src:test/c_thread_local_is_per_thread.c at 5e9c8da7481e in step 36/63, `grep -q 'error: __thread counter: the per-thread variable area is full' /tmp/ctls_full.log || { echo "FAIL ctls: area-f…` (auto-filed by twatch)
- 2026-09-19 — regression: test-nilpy#src:test/test_nilpy_local_named_like_a_class.npy@1 at 67f0878f2e59 in step 1/3, `./compiler/pascal26 test/test_nilpy_local_named_like_a_class.npy /tmp/test_nilpy_localclsname26` (auto-filed by twatch)
- 2026-09-18 — regression: test-core#src:test/test_record_variant_member_leaks.pas at 4fbed6c4157e in step 3/3, `tools/assert_no_leak.sh record_variant_member 50 /tmp/test_rvm26` (auto-filed by twatch)
- 2026-09-18 — What
- 2026-09-18 — holder.py
- 2026-09-18 — regression: test-core#src:test/test_record_promo_member_leaks.pas at 4fbed6c4157e in step 3/21, `tools/assert_no_leak.sh record_promo_member 50 /tmp/test_rpm26` (auto-filed by twatch)
- 2026-09-18 — regression: test-core#src:test/test_cast_deref_varparam.pas at 4fbed6c4157e in step 2/14, `tools/expect_same.sh test_cast_deref_varparam26 "$(/tmp/test_cast_deref_varparam26)" "$(printf 'abc 3')"` (auto-filed by twatch)
- 2026-09-18 — Static literal blocks should never be written to at all
- 2026-09-18 — The ESP bare-metal suite is enrolled nowhere
- 2026-09-18 — regression: test-core#src:test/test_managed_record_gate_leaks.pas at 4fbed6c4157e in step 3/3, `tools/assert_no_leak.sh managed_record_gate 50 /tmp/test_mrg26` (auto-filed by twatch)
- 2026-09-18 — A typed const record is built by startup code, not stored as data
- 2026-09-18 — regression: test-core#src:test/test_object_value_type.pas at cc03b4a51933 in step 8/9, `! ./compiler/pascal26 test/test_object_value_constructor_error.pas /tmp/test_object_value_constructor_error26 > /tmp/te…` (auto-filed by twatch)
- 2026-09-18 — regression: test-nilpy#src:test/test_nilpy_an_unreferenced_header_import_needs_no_library.npy at 4fbed6c4157e in step 17/35, `if [ ! -f /usr/include/FLAC/stream_decoder.h ]; then \ echo "test_nilpy_a_headers_directory_names_its_library: SKIP - n…` (auto-filed by twatch)
- 2026-09-18 — What
- 2026-09-18 — regression: test-core#src:test/test_synth_soname_survives_redeclaration.pas at 4fbed6c4157e in step 3/134, `if readelf -d /tmp/synthclob26 2>/dev/null | grep -q 'libc\.so\.6'; then \ echo "ok: synthclob26 imports memcmp from li…` (auto-filed by twatch)
- 2026-09-18 — What was asked
- 2026-09-18 — k.py
- 2026-09-18 — regression: test-core#src:test/test_indexing_a_string_cast_of_a_pointer_slot.pas at 4fbed6c4157e in step 23/23, `/tmp/test_stridxptrslot26 | diff -u test/test_indexing_a_string_cast_of_a_pointer_slot.expected - \ || { echo 'test_ind…` (auto-filed by twatch)
- 2026-09-18 — The family this closes
- 2026-09-17 — `['x']` is a set, even where only an array can go
- 2026-09-17 — bug-t-host-dev-lib-skip-devtest-outgrew-its-budget-and-times-out-the-whole-guards-job
- 2026-09-17 — Repro
- 2026-09-17 — A defaulted trailing parameter disables argument type checking
- 2026-09-16 — Lex the import closure before parsing, so call-site typing sees every caller
- 2026-09-16 — regression: test-core#src:test/test_nilpy_a_field_widens_across_methods.npy at 67f0878f2e59 in step 2/19, `/tmp/test_nilpy_fldwiden26 | diff -u test/test_nilpy_a_field_widens_across_methods.expected -` (auto-filed by twatch)
- 2026-09-16 — The canonical syscall idiom does not compile
- 2026-09-16 — `__builtin_inf` is undeclared, so duktape cannot compile
- 2026-09-16 — regression: test-core#src:test/test_nilpy_augmented_dunder_subscript.npy at 67f0878f2e59 in step 2/16, `/tmp/test_nilpy_augdunsub26 | diff -u test/test_nilpy_augmented_dunder_subscript.expected -` (auto-filed by twatch)
- 2026-09-16 — first-ever red: test-core#src:test/c_crtl_wait.c at 27303aeeb35c in step 5/5, `for a in i386 arm32 aarch64 riscv32; do \ case $a in i386) q=qemu-i386;; arm32) q=qemu-arm;; aarch64) q=qemu-aarch64;; …` (auto-filed by twatch)
- 2026-09-16 — A string function result assigned to an Integer compiles silently
- 2026-09-16 — quickjs compiles in full, then frees a `-1` pointer
- 2026-09-16 — regression: optdiff#shard10/12 at 285208414d3f in step 1/1, `tools/optdiff.sh --shard 10/12` (auto-filed by twatch)
- 2026-09-16 — regression: test-core#src:test/test_nilpy_getitem_iteration_protocol.npy at 67f0878f2e59 in step 2/11, `/tmp/test_nilpy_getitemiter26 | diff -u test/test_nilpy_getitem_iteration_protocol.expected -` (auto-filed by twatch)
- 2026-09-16 — bug-a-a-nilpy-object-allocation-takes-no-heap-lock-on-x86-64-threadsafe
- 2026-09-16 — regression: test-core#src:test/test_nilpy_module_member_as_a_value.npy at 5dbee723e228 in step 2/12, `/tmp/test_nilpy_modmemval26 | diff -u test/test_nilpy_module_member_as_a_value.expected -` (auto-filed by twatch)
- 2026-09-16 — regression: optdiff#shard0/12 at 285208414d3f in step 1/1, `tools/optdiff.sh --shard 0/12` (auto-filed by twatch)
- 2026-09-16 — Type a bare parameter as a class from its call sites
- 2026-09-16 — regression: optdiff#shard2/12 at 285208414d3f in step 1/1, `tools/optdiff.sh --shard 2/12` (auto-filed by twatch)
- 2026-09-16 — bug-p-an-unresolvable-sizeof-walks-every-arm-down-to-an-else-that-raises-fpcs-own-error
- 2026-09-16 — regression: test-core#src:test/test_a_threadvar_is_a_variable.pas at 59afeadbceaa in step 29/57, `grep -q 'only ordinal, pointer and floating-point threadvars' /tmp/tv_4.err` (auto-filed by twatch)
- 2026-09-16 — `{$if}` over a set-valued constant
- 2026-09-16 — regression: test-core#src:test/test_nilpy_setitem_through_a_variant_receiver.npy at 67f0878f2e59 in step 2/2, `/tmp/test_nilpy_varsetitem26 | diff -u test/test_nilpy_setitem_through_a_variant_receiver.expected -` (auto-filed by twatch)
- 2026-09-16 — regression: lib-test#src:test/test_nilpy_a_thread_nobody_joins_gives_its_stack_back.npy at e977f78c3199 in step 2/6, `tools/expect_same.sh test_nilpy_threadstack "$(/tmp/test_nilpy_threadstack | tail -n 1)" "THREADSTACK OK"` (auto-filed by twatch)
- 2026-09-16 — regression: test-nilpy#src:test/test_nilpy_variant_str_index.npy at ec4b9c6a1f22 in step 2/4, `tools/expect_same.sh test_nilpy_variant_str_index26 "$(/tmp/test_nilpy_variant_str_index26)" "$(printf 'a\na\nb\na d\nc…` (auto-filed by twatch)
- 2026-09-16 — A module-level constant is a typed call site
- 2026-09-16 — An array constant with a set element type cannot be initialised
- 2026-09-16 — regression: test-nilpy#src:test/test_nilpy_builtin_subclass_dunder_dispatch.npy at 5dbee723e228 in step 3/12, `./compiler/pascal26 test/test_nilpy_subscript_dunder_spellings.npy /tmp/test_nilpy_subdunder26` (auto-filed by twatch)
- 2026-09-16 — `_Static_assert` is refused at block scope
- 2026-09-16 — regression: test-core#src:test/test_nilpy_subscript_store_on_a_call_result.npy at 67f0878f2e59 in step 2/15, `/tmp/test_nilpy_callsubst26 | diff -u test/test_nilpy_subscript_store_on_a_call_result.expected -` (auto-filed by twatch)
- 2026-09-16 — A local bound to a container literal is a class site
- 2026-09-16 — regression: test-nilpy#src:test/test_nilpy_bare_return_subscript_slice.npy at ec4b9c6a1f22 in step 2/3, `tools/expect_same.sh test_nilpy_bare_ret_subslice26 "$(/tmp/test_nilpy_bare_ret_subslice26)" "$(printf 'a\na\nab\nprefi…` (auto-filed by twatch)
- 2026-09-16 — Rung 1 dies on a control that cannot fire at one applet
- 2026-09-16 — `malloc_usable_size` is undeclared, so quickjs cannot compile
- 2026-09-16 — `__thread` is accepted and silently ignored
- 2026-09-16 — A block-scope `static` is dropped when a storage class precedes the type
- 2026-09-15 — An augmented store into a class field of a variant receiver never reaches the dunder
- 2026-09-15 — Attribute access directly on a dunder result segfaults
- 2026-09-15 — `Quat(...).normalized()` leaked the construction -- a parser route trap, not an ownership one
- 2026-09-15 — A thread nobody joins never gives back its 1028 kB stack mapping
- 2026-09-15 — A hoisted argument temp escapes a conditional that lives inside an expression
- 2026-09-15 — regression CASCADE: 14 jobs newly red in f7a745e87..827fabcc7 (1 commits) — auto-filed by twatch
- 2026-09-15 — Type a bare parameter from its call sites
- 2026-09-15 — bug-n-a-hoisted-argument-escapes-a-ternary-s-untaken-branch
- 2026-09-15 — A class-annotated local assigned from an uninferrable call holds a raw variant and segfaults
- 2026-09-15 — A method result on the VARIANT carrier leaks a reference per call
- 2026-09-15 — Annotating a dunder operand breaks the operator on a variant receiver
- 2026-09-15 — `P(1, 2)` as a bare statement never released the instance
- 2026-09-14 — sess.py
- 2026-09-14 — bug-a-a-return-out-of-an-except-handler-leaves-the-exception-frame-on-the-chain
- 2026-09-14 — bug-n-a-set-comprehension-over-releases-its-own-list
- 2026-09-14 — bug-a-a-pxx-created-thread-shares-glibc-s-thread-pointer-so-two-threads-share-one-malloc-state
- 2026-09-14 — regression CASCADE: 13 jobs newly red in 6f085e162..e5cd18e4b (1 commits) — auto-filed by twatch
- 2026-09-14 — regression: lib-test#src:test/lib_fpc_thread_surface.pas at 934ba04180e9 in step 1/6, `stable_linux_amd64/default/pinned --threadsafe -Fulib/rtl test/lib_fpc_thread_surface.pas /tmp/lib_fpc_thread_surface` (auto-filed by twatch)
- 2026-09-14 — bug-n-a-bytes-literal-in-an-interpreted-closure-is-read-as-a-length
- 2026-09-14 — A symbol a threadvar program never declared is lowered as a threadvar
- 2026-09-14 — `PC()` writes past its buffer on a long string
- 2026-09-14 — first-ever red: lib-test#src:test/lib_thread_handle_reports_exit_on_both_routes.pas at 06e40fb95b13 in step 1/6, `stable_linux_amd64/default/pinned --threadsafe -Fulib/rtl test/lib_thread_handle_reports_exit_on_both_routes.pas /tmp/l…` (auto-filed by twatch)
- 2026-09-14 — bug-n-a-keyword-call-to-update-on-a-dynamic-receiver-is-routed-to-dict-update
- 2026-09-14 — Measured 2026-09-10
- 2026-09-14 — regression: test-threads#src:test/test_threadsafe_heap_lock_deadlock_diag.pas at 1e3e9a0b95d0 in step 2/13, `out=$(timeout 60 /tmp/test_ts_hl_diag26 2>&1); rc=$?; \ tools/expect_same.sh test_ts_hl_diag26_exit "$rc" "212" && \ to…` (auto-filed by twatch)
- 2026-09-14 — bug-n-a-comprehension-rename-rewrites-a-member-and-a-keyword-name
- 2026-09-14 — feature-a-optional-imports-an-undefined-weak-dynamic-symbol
- 2026-09-14 — bug-n-a-bytes-payload-is-not-nul-terminated-so-a-c-string-seam-reads-past-it
- 2026-09-14 — mimic_zlib
- 2026-09-14 — bug-n-a-class-reference-receiver-walks-rtti-off-a-non-instance
- 2026-09-14 — bug-n-a-star-argument-releases-a-sequence-it-only-borrowed
- 2026-09-14 — bug-n-a-promotable-int-field-is-boxed-as-an-object
- 2026-09-14 — bug-n-a-bytes-expression-in-a-c-seam-argument-passes-the-wrong-pointer
- 2026-09-14 — geom.py
- 2026-09-14 — bug-a-the-allocator-spinlock-was-gated-on-the-wrong-threadsafe-define
- 2026-09-14 — bug-n-adjacent-string-literals-splice-a-plus-so-a-tighter-operator-binds-wrong
- 2026-09-14 — `b64encode` returns str where CPython returns bytes
- 2026-09-14 — bug-n-arithmetic-on-a-user-class-fails-when-the-other-operand-is-object-typed
- 2026-09-14 — regression: lib-test#src:test/lib_criticalsection_blocking.pas at 934ba04180e9 in step 1/3, `stable_linux_amd64/default/pinned --threadsafe -Fulib/rtl test/lib_criticalsection_blocking.pas /tmp/lib_cs_blocking` (auto-filed by twatch)
- 2026-09-13 — An EXPRESSION class attribute declared after a method reads wrong through `self`
- 2026-09-13 — bug-n-a-list-bound-to-a-c-pointer-to-pointer-parameter-passes-the-object-pointer
- 2026-09-13 — bug-n-a-callee-declared-below-its-caller-gets-the-argument-by-the-wrong-abi
- 2026-09-13 — regression: test-nilpy#src:test/nilpy_open_world_arity_fail.npy at 95e7eb26e171 in step 1/11, `./compiler/pascal26 test/nilpy_open_world_arity_fail.npy /tmp/nilpy_ow_ar26 2>&1 \ | grep -q "takes at most 4 arguments…` (auto-filed by twatch)
- 2026-09-13 — bug-n-an-attribute-on-a-dynamic-receiver-binds-to-another-class-s-field-offset
- 2026-09-13 — bug-n-a-star-unpack-in-a-with-header-reads-its-own-temp-before-it-is-filled
- 2026-09-13 — bug-n-a-bytearray-bound-to-a-c-pointer-parameter-passes-the-object-pointer-not-the-data
- 2026-09-13 — bug-n-a-stdlib-shim-function-returning-a-container-is-broken-when-taken-as-a-value
- 2026-09-13 — bug-n-a-module-from-a-guarded-import-gives-one-attribute-int-and-another-variant
- 2026-09-13 — bug-n-a-method-s-non-constant-default-is-none-when-the-call-is-inside-the-class
- 2026-09-13 — bug-n-abs-is-not-a-value-while-len-and-str-are
- 2026-09-13 — The measurement
- 2026-09-13 — bug-n-a-list-reaching-a-c-pointer-parameter-through-an-unannotated-parameter-still-passes-the-object
- 2026-09-13 — A from-imported class loses its methods unless it is renamed
- 2026-09-13 — bug-n-a-module-level-regex-call-recompiles-and-leaks-its-pattern
- 2026-09-13 — bug-n-a-staticmethod-or-classmethod-is-unreachable-through-a-class-held-as-a-value
- 2026-09-13 — getattr cannot see a method, and segfaults through a dynamic receiver
- 2026-09-13 — A runtime-dispatched method call takes at most four arguments
- 2026-09-12 — A bare `mod.ATTR` as a whole argument to a method is undefined
- 2026-09-12 — A chained assignment through a variant-typed intermediate is refused
- 2026-09-12 — `tile.grids.pop(name, None)` resolves against the wrong container's `pop`
- 2026-09-12 — tempfile has no mkdtemp
- 2026-09-12 — An extended slice cannot be assigned
- 2026-09-12 — `with E as v:` does not bind v when __enter__ returns self
- 2026-09-12 — os has no rmdir
- 2026-09-12 — `__doc__` is consumed and discarded
- 2026-09-11 — The staleness check compared the daemon against the sha under test
- 2026-09-11 — Measured 2026-09-10, compiler `ca814b0aabcc`, tree at `5fb6e3d57` + the dead-path fix
- 2026-09-11 — bug-n-a-too-few-args-runtime-dispatch-halts-the-process-where-cpython-raises-typeerror
- 2026-09-11 — `**` unpacking is rejected at a method call, but works at a function call
- 2026-09-11 — The repro, four lines of package and two of program
- 2026-09-11 — A field assigned class-or-None in two methods will not widen
- 2026-09-11 — `try: import X ... else:` — the else clause does not parse
- 2026-09-11 — regression: test-nilpy#src:test/test_nilpy_a_queue_across_two_threads.npy at 06b0e89ee9b0 in step 2/7, `/tmp/test_nilpy_qthreads26 | diff -u test/test_nilpy_a_queue_across_two_threads.expected -` (auto-filed by twatch)
- 2026-09-11 — The wall, and how to stand in front of it
- 2026-09-11 — The wall
- 2026-09-11 — regression: tools-devtest-sh#00 at 24a4733f5bff in step 1/1, `n=0; bad=0; failed=''; \ : > /tmp/tools_devtest_sh_reds.log; \ for f in tools/*devtest*.sh; do \ case "$f" in \ *c_inte…` (auto-filed by twatch)
- 2026-09-11 — regression: lib-test#src:test/lib_synapse_transitive_unit.pas at fca28056d8ec in step 1/6, `stable_linux_amd64/default/pinned --mimic-fpc -Fuexternal/synapse -Fulib/rtl -Fulib/rtl/platform/posix test/lib_synapse…` (auto-filed by twatch)
- 2026-09-11 — What it does, measured 2026-09-11 at compiler `848d67a6757a`
- 2026-09-11 — The element-count form of `Initialize` / `Finalize`
- 2026-09-11 — The repro
- 2026-09-11 — wide.py
- 2026-09-11 — `SizeOf(<a variable>)` is not folded in a constant expression
- 2026-09-11 — Twelve names sit on the wrong side of our unit boundary — the second sign of a class whose first sign is fixed
- 2026-09-11 — The declaration and the body were two different routines
- 2026-09-11 — A set-valued record field cannot be written in a record constant
- 2026-09-11 — regression: test-fpjson#src:tools/install_lib_candidates.sh at fca28056d8ec in step 2/2, `if [ ! -f "library_candidates/fcl-json/packages/fcl-json/src/fpjson.pp" ]; then \ echo "test-fpjson: SKIP — no fcl-json…` (auto-filed by twatch)
- 2026-09-11 — C diagnostics can name a module but not a header
- 2026-09-11 — The population, measured — and the first version of this ticket was wrong about it
- 2026-09-11 — `not` on a C pointer is always True
- 2026-09-11 — regression: lib-test#src:test/lib_synapse.pas at fca28056d8ec in step 1/2, `stable_linux_amd64/default/pinned --mimic-fpc -Fuexternal/synapse -Fulib/rtl -Fulib/rtl/platform/posix test/lib_synapse…` (auto-filed by twatch)
- 2026-09-11 — A unit cycle through `implementation uses` sees no interface
- 2026-09-11 — `{$if}` over a const that is not an integer literal
- 2026-09-11 — regression: test-nilpy#src:test/test_nilpy_a_dead_guarded_import_arm_still_binds_its_unit_alias.npy at 8b188a3beac3 in step 2/30, `tools/expect_same.sh test_nilpy_deadalias26 "$(/tmp/test_nilpy_deadalias26)" "$(python3 test/test_nilpy_a_dead_guarded_…` (auto-filed by twatch)
- 2026-09-11 — The shape, and it is lekkerzeilen's seam
- 2026-09-11 — What is measured
- 2026-09-11 — regression: test-nilpy#src:tools/compiler_srchash.sh at 6cf4d662b25d in step 1/1, `livesrc=$(tools/compiler_srchash.sh); \ stampsrc=$(sed -n 's/^srchash //p' compiler/.pascal26.fixedpoint); \ if [ -z "$…` (auto-filed by twatch)
- 2026-09-11 — The two halves, measured 2026-09-11
- 2026-09-11 — regression: lib-test#src:test/lib_synapse_ssl.pas at fca28056d8ec in step 1/21, `stable_linux_amd64/default/pinned --mimic-fpc -dPXX_DYNLIB_LIBC -Fuexternal/synapse -Fulib/rtl -Fulib/rtl/platform/posi…` (auto-filed by twatch)
- 2026-09-10 — Measured on seven, 2026-09-07
- 2026-09-10 — Measured 2026-09-10, compiler `b7745aaf0a59`, tree `3bebb551e`
- 2026-09-10 — The queue module
- 2026-09-10 — Open-world method dispatch on a dynamically-typed receiver
- 2026-09-10 — The wall, measured 2026-09-10 at compiler `a812b9549413`
- 2026-09-10 — A chained assignment to two attributes does not parse
- 2026-09-10 — regression: test-nilpy#src:test/ffi_local/beside_the_source_wins.npy at a33eb37b4b16 in step 9/12, `out=$(./compiler/pascal26 -Itest/ffi_headers/ test/test_nilpy_a_referenced_symbol_from_a_library_that_cannot_exist.npy …` (auto-filed by twatch)
- 2026-09-10 — NilPy: `math.atan2` can exist now
- 2026-09-10 — The threading module
- 2026-09-10 — What it was, measured 2026-09-10, compiler `73312a7472fd`, tree `5b064fd9d`
- 2026-09-10 — bug-n-the-compiler-segfaults-on-lekkerzeilen-vessel-py
- 2026-09-10 — Repro
- 2026-09-10 — regression: test-nilpy#src:test/test_nilpy_dict_update_keywords.npy at 16993f9196cf in step 2/5, `/tmp/test_nilpy_dictupdkw26 | diff -u test/test_nilpy_dict_update_keywords.expected -` (auto-filed by twatch)
- 2026-09-10 — Measured 2026-09-10, compiler `b7745aaf0a59`
- 2026-09-10 — Two halves, and only the second one makes the first safe
- 2026-09-10 — regression: test-core#src:test/test_header_static_body_ffi_control.pas at 7e4f69a34350 in step 1/107, `./compiler/pascal26 -Itest/chdrstatic -Futest/chdrstatic test/test_header_static_body_ffi_control.pas /tmp/hdrstatic_ff…` (auto-filed by twatch)
- 2026-09-10 — Measured 2026-09-10, compiler `61f8a78f8aae`, tree `31dad27bd`
- 2026-09-10 — Repro
- 2026-09-10 — `math.trunc`, `math.log(x, base)`, `math.pow`, `math.copysign` and `math.atan2` need `pymath_*` intercepts
- 2026-09-10 — A module alias resolves for calls but not for attributes
- 2026-09-10 — The measurement
- 2026-09-10 — `Unaligned(x)` is a passthrough, not a call
- 2026-09-10 — bug-n-traffic-py-has-an-uninferable-heading-field
- 2026-09-10 — Measured 2026-09-10, compiler `4d3d006cf973`
- 2026-09-10 — Measured
- 2026-09-10 — What is missing
- 2026-09-10 — bug-n-the-class-body-scope-is-wired-into-the-wrong-one-of-two-doors
- 2026-09-10 — Measured 2026-09-10, compiler `5a2cef142106`
- 2026-09-10 — Measured 2026-09-10, compiler `c3e38195d910`
- 2026-09-10 — The struct module
- 2026-09-10 — Measured 2026-09-10, compiler `c3e38195d910`, tree `416a8771c`
- 2026-09-10 — Measured
- 2026-09-10 — Why a census and not a walk
- 2026-09-10 — The gap
- 2026-09-09 — The shape
- 2026-09-09 — The shape
- 2026-09-09 — The cap and the kind arrive by different roads, and only a window joins them
- 2026-09-09 — Repro, with the control that separates the two readings
- 2026-09-09 — Repro, with the four controls that locate the boundary
- 2026-09-09 — Nine builtin type names cannot be redeclared, because they lex as keywords
- 2026-09-09 — `IFoo(v)` segfaults where `g := v` works
- 2026-09-09 — The record static call arm is a third hand-rolled argument loop
- 2026-09-09 — What to build
- 2026-09-09 — regression: test-core#src:test/test_libmanifest.pas at 69a5f3c6fb1d in step 35/10, `grep -q "pxxlib.cfg in the current directory and it was NOT consulted" /tmp/unitalias_norow_bare.log` (auto-filed by twatch)
- 2026-09-09 — A hoisted nested-type name leaks between two specializations of one template
- 2026-09-09 — A specialization ladder that gains an argument segment per round
- 2026-09-09 — regression: test-threads#src:test/test_a_threadvar_is_per_thread.pas at 88a84359f5a0 in step 2/11, `tools/expect_same.sh test_threadvar_pt26 "$(/tmp/test_threadvar_pt26)" "$(printf 'kept=4/4\nzeroed-on-entry=4/4\nno-cro…` (auto-filed by twatch)
- 2026-09-09 — An explicit cast with no capacity match falls back to the wrong conversion operator
- 2026-09-09 — A field access on an operator result does not lower
- 2026-09-09 — A field assigned from a bare local of the same method has no inferable type
- 2026-09-09 — Two array parameters at one bracket slot are decided by declaration order
- 2026-09-09 — A bare method call inside its own class ignores its arity
- 2026-09-09 — `v := ifc`
- 2026-09-09 — `{$if}` over a declared constant or type
- 2026-09-09 — Empty parens at a bare method call reads a garbage argument
- 2026-09-09 — regression: test-core#src:test/test_generic_delphi_method_header_binds_to_the_generic.pas at 5acbe362b034 in step 2/2, `tools/expect_same.sh sweep_gendelphi26 "$(/tmp/sweep_gendelphi26)" "$(printf '100\n100\n10\n10\n7\n2\n4')"` (auto-filed by twatch)
- 2026-09-09 — How does a hand-built COM interface become callable?
- 2026-09-09 — regression: test-record-abi-mixed-link#src:tools/compiler_srchash.sh at 3b5005e79ea4 in step 1/25, `livesrc=$(tools/compiler_srchash.sh); \ stampsrc=$(sed -n 's/^srchash //p' compiler/.pascal26.fixedpoint); \ if [ -z "$…` (auto-filed by twatch)
- 2026-09-09 — A string literal bound to a PWideChar is emitted narrow, and only the cast surface refuses
- 2026-09-09 — Conversion-operator ranking reads a literal's static kind, not its value
- 2026-09-09 — The shape
- 2026-09-09 — A bare variadic method call segfaults where the bracketed spelling works
- 2026-09-09 — `--strict-visibility` covers classes and not records, and says nothing about the difference
- 2026-09-09 — A base class named by a Pascal reserved word is not mapped
- 2026-09-09 — The two defects
- 2026-09-09 — A field assigned from a module global whose initialiser is an EXPRESSION is refused
- 2026-09-09 — A nested record's static class function has no body when the call is in a specialized body
- 2026-09-09 — A constant expression that overflows Int64 stays signed
- 2026-09-09 — The mangling, measured
- 2026-09-09 — The operator "already predefined" check is an aggregate approximation
- 2026-09-09 — The `BooleanNN` family, and what separates it from `*Bool`
- 2026-09-09 — What to build
- 2026-09-09 — A `library` still requires a `begin`/`end.` main body
- 2026-09-09 — `Self` in a record helper for a dynamic array types as Integer
- 2026-09-09 — Two non-const array overloads at a bracket slot cannot be ranked by element type
- 2026-09-09 — A static class function's address carries a hidden Self
- 2026-09-09 — The gap
- 2026-09-09 — regression: test-core#src:test/c_alloca_expression_stack.c at 9b0c07c2d5a8 in step 9/37, `if command -v qemu-riscv32 >/dev/null 2>&1; then \ ./compiler/pascal26 --target=riscv32 test/c_alloca_expression_stack.…` (auto-filed by twatch)
- 2026-09-09 — Builtin TObject class — `var o: TObject` + `TObject.Create` + root methods
- 2026-09-09 — A record's static class function is called with a dummy Self it no longer has
- 2026-09-09 — A set candidate at a bracket slot vetoes the narrowing instead of winning it
- 2026-09-09 — A pxxlib.cfg is skipped in silence when the source is compiled from its own directory
- 2026-09-09 — The bare implicit-Self call in expression position has none of the doors
- 2026-09-09 — Overload resolution picks the signed arm for an unsigned argument
- 2026-09-09 — `{$if declared(X)}` cannot see a used unit's declarations, and answers False rather than refusing
- 2026-09-09 — A conversion operator's destination string capacity has no carrier
- 2026-09-09 — The repro — and it carries the control that removes the literal
- 2026-09-09 — The fact, and how it presents
- 2026-09-09 — The repro — refused by pin and HEAD alike, compiled by fpc
- 2026-09-09 — A generic method implementation is attributed by name, not arity
- 2026-09-09 — `class` in a class body is recognised by enumeration, not by structure
- 2026-09-09 — A routine-local dynamic-array initializer
- 2026-09-09 — sorted() over bytes raises where sorted() over str works
- 2026-09-09 — TObject API: ClassParent, InstanceSize, ClassInfo, ToString, Equals, GetHashCode
- 2026-09-09 — bug-p-a-specialized-method-body-splices-into-an-illegal-place-under-circular-uses
- 2026-09-09 — The wall
- 2026-09-09 — Residue of the fat-pointer interface representation
- 2026-09-09 — A bare method name in argument position is called instead of referenced
- 2026-09-09 — regression: test-core#src:test/test_generic_nested_inline_specialize.pas at ff7b4f2edb76 in step 2/7, `tools/expect_same.sh test_generic_nested_spec26 "$(/tmp/test_generic_nested_spec26)" "$(printf 'var: 7\nfield: 4\nparam…` (auto-filed by twatch)
- 2026-09-09 — regression: test-nilpy#src:test/test_nilpy_str_method_vs_pascal_string_helper.npy at 4d018b041297 in step 1/2, `./compiler/pascal26 test/test_nilpy_str_method_vs_pascal_string_helper.npy /tmp/test_nilpy_strmhelper26` (auto-filed by twatch)
- 2026-09-09 — What is known
- 2026-09-09 — regression: test-core#src:test/test_a_bracket_argument_reaches_the_same_door_at_every_call_path.pas at af0e5a0ad099 in step 2/15, `tools/expect_same.sh test_bracketdoor26 "$(/tmp/test_bracketdoor26 | tail -n 2)" "$(printf 'fails=0\nBRACKETDOOR OK')"` (auto-filed by twatch)
- 2026-09-09 — Repro
- 2026-09-08 — A for-in enumerator whose MoveNext takes arguments is accepted, on both arms
- 2026-09-08 — An interface name in a var initialiser stores the GUID's ADDRESS, not the GUID
- 2026-09-08 — Repro
- 2026-09-08 — regression: test-core#src:test/test_nested_class_type_scoping.pas at d81b90a991e9 in step 1/2, `./compiler/pascal26 test/test_nested_class_type_scoping.pas /tmp/test_nested_cls_type26` (auto-filed by twatch)
- 2026-09-08 — Repro — the counter is the point
- 2026-09-08 — An imported generic routine is spliced before the program's own type section
- 2026-09-08 — FIXED — 2026-09-07 (frankS)
- 2026-09-08 — regression: test-core#src:test/test_a_nested_type_may_specialize_its_own_template.pas at 630c8d31c63a in step 1/2, `./compiler/pascal26 test/test_a_nested_type_may_specialize_its_own_template.pas /tmp/test_selfnesttype26` (auto-filed by twatch)
- 2026-09-08 — An alias in a used unit loses to a same-named class row from another unit
- 2026-09-08 — regression: test-core#src:test/test_record_nested_type_section.pas at d81b90a991e9 in step 1/2, `./compiler/pascal26 test/test_record_nested_type_section.pas /tmp/test_rnts26` (auto-filed by twatch)
- 2026-09-08 — A base class's nested type resolves but cannot be assigned or called
- 2026-09-08 — An inline `specialize` used before the generic routine's BODY is not rewritten
- 2026-09-08 — regression: test-pascal-conformance#shard3/6 at d81b90a991e9 in step 1/1, `tools/run_pascal_conformance.sh ./compiler/pascal26 library_candidates/fpc-testsuite/tests/test --shard 3/6` (auto-filed by twatch)
- 2026-09-08 — regression: test-core#src:test/test_a_qualified_nested_alias_is_a_type_and_a_scope.pas at 630c8d31c63a in step 1/2, `./compiler/pascal26 test/test_a_qualified_nested_alias_is_a_type_and_a_scope.pas /tmp/test_qualnestedalias26` (auto-filed by twatch)
- 2026-09-08 — Repro
- 2026-09-08 — for-in over a string prefers a user `operator enumerator`; fpc prefers the builtin
- 2026-09-08 — The shape
- 2026-09-08 — A specialization in a routine-local `type` section desyncs the parse
- 2026-09-08 — A nested routine's local type does not shadow the enclosing routine's
- 2026-09-08 — After a nested routine is lifted, a later syntax error names the wrong token
- 2026-09-08 — FIXED — and the ticket's own "shape of the fix" was right where I was cautious
- 2026-09-08 — regression: test-arm32#src:tools/compiler_srchash.sh at b29428afe251 in step 1/1, `livesrc=$(tools/compiler_srchash.sh); \ stampsrc=$(sed -n 's/^srchash //p' compiler/.pascal26.fixedpoint); \ if [ -z "$…` (auto-filed by twatch)
- 2026-09-08 — Routine-local name scoping is implemented in one of FIVE tables, and the one implementation is wrong at the edge
- 2026-09-08 — A for-in container must start with an identifier token
- 2026-09-08 — regression: test-emit-obj#src:test/c_obj_data_dup_a.c at 1b59d1bbc364 in step 1/52, `./compiler/pascal26 --emit-obj test/c_obj_data_dup_a.c /tmp/cods_dup_a.o` (auto-filed by twatch)
- 2026-09-07 — A constructor reached through an INSTANCE is typed Integer, so its value is wrong
- 2026-09-07 — The scope-exit managed-local release loop has seven copies
- 2026-09-07 — The shape
- 2026-09-07 — One full tier run with no RED tier
- 2026-09-07 — A bare method-overload call accepts any argument type and runs the first body
- 2026-09-07 — bug-a-no-probe-can-see-the-sweep-thunks-stack-alignment-constant
- 2026-09-07 — Repro — a plain class, no generics anywhere
- 2026-09-07 — bug-p-a-cross-unit-specialized-method-cannot-see-its-own-parameters
- 2026-09-07 — The `System.` qualifier is stripped rather than resolved, so a shadowing member wins
- 2026-09-07 — The compiler prints `ok:` and exits 0 when it wrote no output file
- 2026-09-07 — Record equality compares one machine word
- 2026-09-07 — The refusal, and why it is where it is
- 2026-09-07 — The loop, from the log
- 2026-09-07 — An integer argument binds a procedural overload over an exact integer one
- 2026-09-07 — bug-p-a-sibling-call-to-a-capturing-nested-function-gets-the-wrong-capture-actuals
- 2026-09-07 — regression: lib-test#src:test/lib_sysutils_delphi_exceptions.pas at c543b335fb2f in step 2/3, `tools/expect_same.sh lib_sysutils_delphi_exc.1 "$(/tmp/lib_sysutils_delphi_exc | grep -c '=ok')" "21"` (auto-filed by twatch)
- 2026-09-07 — A whole-record assignment does not run a contained field's `Copy` operator
- 2026-09-07 — What happened
- 2026-09-07 — bug-p-a-generic-body-takes-its-directive-state-from-the-specialization-site
- 2026-09-07 — The shape
- 2026-09-07 — A generic routine's specialization renames a FIELD spelled like the routine
- 2026-09-07 — regression: test-c-abi-mixed-link#src:tools/compiler_srchash.sh at f84be3fd43df in step 1/2, `livesrc=$(tools/compiler_srchash.sh); \ stampsrc=$(sed -n 's/^srchash //p' compiler/.pascal26.fixedpoint); \ if [ -z "$…` (auto-filed by twatch)
- 2026-09-06 — The residual from the channel refactor
- 2026-09-06 — Two spellings, one right
- 2026-09-06 — regression: test-core#src:test/test_stack_overflow_raise.pas at 0dd59f05cc3a in step 2/2, `tools/expect_same.sh test_stack_ovf_raise26 "$(/tmp/test_stack_ovf_raise26)" "$(printf 'recursing\ncaught a stack overf…` (auto-filed by twatch)
- 2026-09-06 — `for x in F` is refused when F returns a set
- 2026-09-06 — A class const is unreachable through an instance receiver
- 2026-09-06 — The emit-obj xtensa link shim does not provide the PAL backend's ESP-IDF symbols
- 2026-09-06 — Indexing a string cast of a `Pointer` slot: blank read, lost store, and one spelling that will not parse
- 2026-09-06 — regression: test-nilpy#src:test/test_nilpy_star_args_ctor.npy at 18f97d8f5f1f in step 1/2, `./compiler/pascal26 test/test_nilpy_star_args_ctor.npy /tmp/test_nilpy_star_args_ctor26` (auto-filed by twatch)
- 2026-09-06 — The two mechanisms
- 2026-09-06 — A chained class var of class type loses its record identity
- 2026-09-06 — decide-claude-mds-safe-restore-is-unsafe-after-a-sha-checkout-and-only-the-owner-can-fix-the-sentence
- 2026-09-06 — `Assert` is undefined on `--esp-profile=bare`
- 2026-09-06 — A string-alias cast over a Pointer slot is treated as a no-op, so the expression stays a pointer
- 2026-09-06 — `near`'s devtest fails on board prose, not on the tool
- 2026-09-06 — `SetLength` through a string cast of a `Pointer` slot has no lowering, in either spelling
- 2026-09-06 — A pointer to a fixed array segfaults as a copying open-array argument
- 2026-09-06 — An i386 object carries .text relocations as soon as it uses sysutils
- 2026-09-06 — PalNanosleep is -ENOSYS on riscv32
- 2026-09-06 — regression: test-core#src:test/test_generic_method_unused_is_erased.pas at d11b8a1a99dd in step 1/2, `./compiler/pascal26 -Futest/generic_unused_units test/test_generic_method_unused_is_erased.pas /tmp/test_gen_unused26` (auto-filed by twatch)
- 2026-09-06 — Measured 2026-09-06, compiler `66e848666e3c`
- 2026-09-06 — A parameter and a local that differ only in case are two symbols
- 2026-09-06 — The measurement
- 2026-09-06 — A cast to a pointer-to-pointer drops the implicit second deref
- 2026-09-06 — An array of records-with-interface-fields leaks the interfaces
- 2026-09-06 — `array of const` in a method-pointer type
- 2026-09-06 — regression: test-core#src:test/test_inline_generic_specialization.pas at b2a41d5f4fb9 in step 1/2, `./compiler/pascal26 test/test_inline_generic_specialization.pas /tmp/test_inline_genspec26` (auto-filed by twatch)
- 2026-09-06 — regression: test-core#src:test/test_cross_float_const.pas at 74526018b122 in step 2/2, `tools/expect_same.sh test_float_const26 "$(/tmp/test_float_const26)" "$(printf 'pi=3.14159 scale=2.00\ncoef=8.25\ntab=3…` (auto-filed by twatch)
- 2026-09-06 — a `var` record parameter's write-back is dropped where no implementation header repairs the row
- 2026-09-06 — Low/High of a nested static array's row answer the outer array's bounds
- 2026-09-06 — Filed 2026-09-06 — frankS measured it, this seat filed it; neither holds it
- 2026-09-06 — NodeArrNDInfo yields spans but not the element
- 2026-09-06 — regression: test-threads#src:test/test_threadsafe_class_finalize_race.pas at 918842a5fd43 in step 2/2, `tools/expect_same.sh test_tscfr26 "$(/tmp/test_tscfr26)" "$(printf 'errors=0\nRACE OK')"` (auto-filed by twatch)
- 2026-09-06 — A parameterless method is `undefined variable` as a by-ref argument
- 2026-09-06 — regression: test-threads#src:test/test_threadsafe_class_finalize_race.pas at e678b743d3bb in step 2/2, `tools/expect_same.sh test_tscfr26 "$(/tmp/test_tscfr26)" "$(printf 'errors=0\nRACE OK')"` (auto-filed by twatch)
- 2026-09-06 — A spurious unknown-directive warning cannot fail any test we have
- 2026-09-06 — The shape
- 2026-09-06 — Calling a method pointer reached through an indexed property
- 2026-09-06 — NodeArrNDInfo answers nothing for a rank-1 array
- 2026-09-06 — `TArray<T>` is not ambient
- 2026-09-06 — Measured 2026-09-06, compiler `faa41e4b920f`
- 2026-09-06 — bug-p-a-nested-functions-bare-own-name-read-is-compiled-as-a-recursive-call
- 2026-09-06 — `TCb = procedure(n: Integer = 5)` does not parse
- 2026-09-06 — Pin-verify and requested-verify publish a verdict with no manifest
- 2026-09-06 — A class method through a class-ref field is parsed as a field read
- 2026-09-06 — A class member loses its name to a same-named unit routine
- 2026-09-06 — `class constructor` is accepted and never runs
- 2026-09-06 — NilPy still leaks class fields under --threadsafe
- 2026-09-06 — regression CASCADE: 23 jobs newly red in b8e3b3010..6758c7ce7 (105 commits) — auto-filed by twatch
- 2026-09-06 — Nothing stops a probe binary being committed under `test/`
- 2026-09-06 — regression: test-core#src:test/test_generic_func.pas at b2a41d5f4fb9 in step 1/2, `./compiler/pascal26 test/test_generic_func.pas /tmp/test_generic_func26` (auto-filed by twatch)
- 2026-09-06 — arm32 has no getdents64 number, on purpose
- 2026-09-06 — regression: test-core#src:test/cfloat_global_array_implicit_len_b386.c at 0dd59f05cc3a in step 2/2, `/tmp/cfloat_global_array_implicit_len_b38626; tools/expect_same.sh cfloat_global_array_implicit_len_b38626-rc "$?" "42"` (auto-filed by twatch)
- 2026-09-06 — A receiver-less `Free;` inside a method is an undefined variable
- 2026-09-06 — A class or record body accepts arbitrary tokens without a diagnostic
- 2026-09-06 — An open-array literal loses its length through a procedural-type call
- 2026-09-06 — An unresolved `<...>` suffix is consumed in var position and dropped in field position
- 2026-09-06 — TList.Count is writable
- 2026-09-06 — regression CASCADE: 20 jobs newly red in 851f170cb..0dd59f05c (4 commits) — auto-filed by twatch
- 2026-09-06 — regression CASCADE: 42 jobs newly red in cab3205aa..562162b03 (6 commits) — auto-filed by twatch
- 2026-09-06 — CloneAST's and AllocNode's field sets are kept in sync by hand
- 2026-09-06 — regression: test-core#src:test/test_libwriteln_parity.pas at fa5e9ef55813 in step 2/2, `tools/expect_same.sh test_libwln26 "$(/tmp/test_libwln26)" "$(cat test/test_libwriteln_parity.expected)"` (auto-filed by twatch)
- 2026-09-06 — regression: test-core#src:test/test_nd_subarray_as_param.pas at 0aff068c6d08 in step 3/6, `if command -v qemu-aarch64 >/dev/null 2>&1 && command -v qemu-arm >/dev/null 2>&1 \ && command -v qemu-riscv32 >/dev/nu…` (auto-filed by twatch)
- 2026-09-06 — regression: test-threads#src:test/test_critsec_once.pas at 0dd59f05cc3a in step 2/2, `tools/expect_same.sh test_critsec_once26 "$(/tmp/test_critsec_once26)" "$(printf 'critsec=400000 expected=400000\ninit …` (auto-filed by twatch)
- 2026-09-06 — Eight call paths, eight copies of one question
- 2026-09-06 — regression: test-core#src:test/test_fpc_compat_batch2.pas at 7b287013d34a in step 8/3, `fglsrc=""; \ if [ -f library_candidates/fpc-rtl/rtl/objpas/fgl.pp ]; then fglsrc=library_candidates/fpc-rtl/rtl/objpas;…` (auto-filed by twatch)
- 2026-09-06 — `Free` on a computed receiver is refused, because the desugaring clones it
- 2026-09-06 — The measurement — the FPC compiler-source march, re-run 2026-09-05
- 2026-09-06 — The timeout struct is 64-bit on every target; ppoll's is not
- 2026-09-06 — A sized boolean is true and not-true at the same time
- 2026-09-06 — A generic template declared in a unit's implementation is visible to its importers
- 2026-09-06 — `default <value>` and `default;` are different clauses sharing one arm
- 2026-09-06 — wasm32 refuses a load of an interface-valued record field
- 2026-09-06 — Measured 2026-09-06, compiler `e4abd7e3c3e7` (commit a952d4591)
- 2026-09-06 — An exact-case match in an outer scope beats a case-insensitive one in a nearer scope
- 2026-09-06 — An interface-dispatched call that omits a defaulted argument segfaults
- 2026-09-06 — A local var-section array initializer
- 2026-09-06 — regression: test-core#src:test/test_signal_sp_rewrite.pas at 0dd59f05cc3a in step 2/2, `tools/expect_same.sh test_signal_sprw26 "$(/tmp/test_signal_sprw26)" "$(printf 'caught, hits=1\nraiser-ran-on-the-spare…` (auto-filed by twatch)
- 2026-09-06 — A Variant parameter makes a stackless generator produce nothing
- 2026-09-06 — A nil assignment to a dynamic-array field is lowered as a record zero
- 2026-09-06 — regression: test-core#src:test/test_a_named_dynamic_array_parameter_still_takes_nil_as_a_default.pas at fc43936b00d9 in step 1/2, `./compiler/pascal26 test/test_a_named_dynamic_array_parameter_still_takes_nil_as_a_default.pas /tmp/test_dynarraydefaul…` (auto-filed by twatch)
- 2026-09-06 — A dynamic array of CLASS loses its element type when it is a parameter
- 2026-09-06 — The i386 PIC prefix guard reads a displacement byte as a prefix
- 2026-09-06 — regression: test-threads#src:test/test_threadsafe_class_finalize_kinds.pas at 918842a5fd43 in step 2/2, `tools/expect_same.sh test_tscfk26 "$(/tmp/test_tscfk26)" "$(printf 'errors=0\nKINDS OK')"` (auto-filed by twatch)
- 2026-09-06 — `file of string[N]` refuses, with a width `SizeOf` contradicts
- 2026-09-06 — An open-array and a named dynamic-array parameter are one signature
- 2026-09-06 — A NilPy generator fails on wasm32 while three other targets agree
- 2026-09-06 — "Is this node a whole array?" is answered in four places with four lists
- 2026-09-06 — regression: test-core#src:test/test_builtin_type_names_cast_and_declare.pas at b6815e5b8675 in step 2/2, `tools/expect_same.sh test_typenames26 "$(/tmp/test_typenames26 | tail -1)" "ALL OK"` (auto-filed by twatch)
- 2026-09-06 — regression: test-fgl#src:tools/compiler_srchash.sh at 3b13f585f5f4 in step 2/2, `tools/run_fgl_corpus.sh ./compiler/pascal26 library_candidates/fpc-rtl/rtl/objpas` (auto-filed by twatch)
- 2026-09-06 — regression: test-core#src:test/test_promoint_bitwise.pas at 0aff068c6d08 in step 2/2, `tools/expect_same.sh sweep_promoint26 "$(/tmp/sweep_promoint26)" "$(printf '18446744073709551615\n0\ncrossed\n184467440…` (auto-filed by twatch)
- 2026-09-06 — first-ever red: test-core#src:test/test_a_record_class_constructor_is_warned_about.pas at ad2735420d6b in step 1/2, `./compiler/pascal26 test/test_a_record_class_constructor_is_warned_about.pas /tmp/test_recclassctorwarn26 > /tmp/reccla…` (auto-filed by twatch)
- 2026-09-06 — A generic routine supports exactly one type parameter
- 2026-09-06 — One name, several doors, and the working ones vouch for the broken ones
- 2026-09-06 — A unit's {$define} leaks into the units it uses
- 2026-09-06 — regression: test-threads#src:test/test_parallel_for_private.pas at 0dd59f05cc3a in step 2/2, `tools/expect_same.sh test_parallel_for_private26 "$(/tmp/test_parallel_for_private26)" "$(cat test/test_parallel_for_pr…` (auto-filed by twatch)
- 2026-09-06 — `Low`, `High` and a constructor cannot see a qualified nested ALIAS, while the declaration of the same name compiles
- 2026-09-06 — bug-a-an-exception-that-escapes-its-handler-or-is-bare-re-raised-still-leaks-its-object
- 2026-09-06 — A desugared assignment reports a type error with no location at all
- 2026-09-06 — Repro
- 2026-09-06 — bug(P): a nested N-D subscript clobbers the outer subscript's global parse state — three faces, two of them silent
- 2026-09-06 — A default value is accepted on an open-array parameter
- 2026-09-06 — regression CASCADE: 36 jobs newly red in 85d70d700..c999836a2 (2 commits) — auto-filed by twatch
- 2026-09-06 — ReadLn from a text file into a frozen string segfaults
- 2026-09-06 — bug-p-a-class-helpers-class-method-is-refused-by-the-record-metaclass-rule
- 2026-09-06 — regression: test-core#src:test/test_interface_containers.pas@2 at 918842a5fd43 in step 2/2, `tools/expect_same.sh test_interface_containers_ts26 "$(/tmp/test_interface_containers_ts26)" "$(printf 'strarr: ok\nsta…` (auto-filed by twatch)
- 2026-09-06 — The sized booleans render as a digit in both `Str` and `writeln`
- 2026-09-06 — crtl has no pty family at all
- 2026-09-06 — A bare function name assigned to a procedural variable segfaults outside Delphi mode
- 2026-09-06 — The Erlang skeleton computes a wrong value cross-target
- 2026-09-06 — `EmitZeroFrameSlot` has no wasm32 arm
- 2026-09-06 — Measured 2026-09-06, compiler `c73cfd487af1` (commit 393fe0184)
- 2026-09-06 — regression: test-core#src:test/test_single_const_value.pas at 74526018b122 in step 2/2, `tools/expect_same.sh test_single_const26 "$(/tmp/test_single_const26)" "$(printf '1 2.5000\n2 0.5000\n3 -1.5000\n4 1.50…` (auto-filed by twatch)
- 2026-09-06 — Read into a frozen string uses the wrong prefix width
- 2026-09-06 — A semantic diagnostic in a used unit has no location at all
- 2026-09-06 — A named array-type parameter was a scalar wherever no implementation header repaired it
- 2026-09-06 — The x86-64 program tail three drivers write by hand
- 2026-09-06 — regression: test-core#src:test/test_pointer_function_result_keeps_its_depth.pas at 85d70d70076a in step 2/2, `tools/expect_same.sh test_ptrfnres26 "$(/tmp/test_ptrfnres26)" "$(cat test/test_pointer_function_result_keeps_its_depth…` (auto-filed by twatch)
- 2026-09-06 — regression: test-core#src:test/test_cross_global_init.pas at 74526018b122 in step 2/2, `tools/expect_same.sh test_global_init26 "$(/tmp/test_global_init26)" "$(printf 'k=42 q=5000000000 flag=TRUE\ntabsum=150…` (auto-filed by twatch)
- 2026-09-06 — `tools-devtest#00` is six reds with four causes
- 2026-09-06 — `read`, `write`, `readln`, `exit`, `halt` cannot be declared as user routines
- 2026-09-06 — The measurement
- 2026-09-06 — The shape
- 2026-09-06 — One field, two meanings, no refusal
- 2026-09-06 — bug-a-threadsafe-builds-leak-every-variant-and-interface-element-of-a-dynamic-array
- 2026-09-06 — The shape
- 2026-09-06 — The last red cell of the opener × chain census
- 2026-09-06 — The pinned RTL canary asks "does the PIN fail where HEAD succeeds" and never the reverse
- 2026-09-06 — A string literal passed to a stackless generator is stored without being materialised
- 2026-09-06 — regression CASCADE: 42 jobs newly red in 9d5a4e270..b8e3b3010 (16 commits) — auto-filed by twatch
- 2026-09-06 — A distinct-type declaration is parsed but is not distinct
- 2026-09-06 — A procedural type cannot return an array, or another procedural type
- 2026-09-06 — A typed pointer cast used with `.` loses the implicit dereference
- 2026-09-06 — A class typecast is refused as a by-reference argument
- 2026-09-06 — sysutils.CharInSet
- 2026-09-06 — Measured-good is not coverage
- 2026-09-06 — The row
- 2026-09-06 — regression: test-nilpy#src:test/test_nilpy_dotted_package_import.npy@1 at 6d04b14cd88d in step 1/2, `./compiler/pascal26 test/test_nilpy_dotted_package_import.npy /tmp/test_nilpy_dottedimport26` (auto-filed by twatch)
- 2026-09-06 — No C entry stub for wasm32
- 2026-09-06 — summary
- 2026-09-06 — A declaration-only `= nil` default on a dynamic-array parameter is lost
- 2026-09-06 — A bracket at the head of an argument is an operator's left operand
- 2026-09-06 — A unit re-declaring a builtin interface alias makes it a `record`, and every call taking the interface is refused
- 2026-09-06 — bug-p-the-two-arms-of-in-disagree-about-their-own-domain-silently
- 2026-09-06 — P three hand-rolled copies of the postfix `^ / .field / [i]` loop
- 2026-09-06 — Nine intrinsic spellings are hard keywords, so none can be a user name
- 2026-09-06 — `@` over a class base consumes only one selector
- 2026-09-06 — regression: test-core#src:test/test_record_nested_type_section.pas at 6e00f29b0d93 in step 1/2, `./compiler/pascal26 test/test_record_nested_type_section.pas /tmp/test_rnts26` (auto-filed by twatch)
- 2026-09-06 — Pair the pin with the `lib/rtl` it is coherent with
- 2026-09-06 — A half-dereferenced pointer chain answers garbage instead of refusing
- 2026-09-06 — wasm32's release loop consults neither skip predicate
- 2026-09-06 — Indexing the result of a bare implicit-Self method call
- 2026-09-06 — A function's own name is not an lvalue to `Str` and `Val`
- 2026-09-06 — The shape
- 2026-09-06 — `{$mode delphi}` binds a bare routine name only for a variable target
- 2026-09-06 — Measured 2026-09-06, pxx HEAD and pinned agreeing (so: not the VMT-slot fix)
- 2026-09-06 — regression: test-core#src:test/test_generic_method_across_a_uses_clause.pas at d11b8a1a99dd in step 1/8, `./compiler/pascal26 -Futest/generic_xunit_method_units test/test_generic_method_across_a_uses_clause.pas /tmp/test_gen_…` (auto-filed by twatch)
- 2026-09-06 — A `var` parameter of a stackless generator stores the value where the slot expects an address
- 2026-09-06 — A whole-array assignment destination is never type-checked
- 2026-09-06 — Only the Pascal frontend ever asks for an unwind landing pad
- 2026-09-06 — Twelve syntax-shaped `%FAIL` refusals: green for their own reason, or green by accident?
- 2026-09-05 — regression: test-core#src:test/test_c_gtk_call.pas at 7867c5481c01 in step 1/2, `./compiler/pascal26 test/test_c_gtk_call.pas /tmp/test_c_gtk_call26` (auto-filed by twatch)
- 2026-09-05 — The overload probe cannot see the argument-match channels
- 2026-09-05 — Carve out `paslexer` so Track P owns its lexer too
- 2026-09-05 — The FPC compiler corpus asks for two layouts we do not give it
- 2026-09-05 — regression: test-core#src:test/test_dynarray_to_pointer_seam_leaks.pas at f2c6ff3288b4 in step 1/3, `./compiler/pascal26 -dPXX_ALLOC_CENSUS test/test_dynarray_to_pointer_seam_leaks.pas /tmp/test_dtp26` (auto-filed by twatch)
- 2026-09-05 — Measured 2026-09-05, fpc 3.2.2 as the oracle, pin-independent (probes run on the tip)
- 2026-09-05 — A signal runtime for HOSTED xtensa
- 2026-09-05 — The public status page delegates all its numbers off-site, and nothing checks the destination
- 2026-09-05 — A string literal binds to any typed pointer parameter, and segfaults
- 2026-09-05 — `#include <stdio.h>` does not compile for xtensa
- 2026-09-05 — C: a pointer to a typedef'd array loses the pointee's shape
- 2026-09-05 — A set parameter lost its element kind, so `for x in p` refused it
- 2026-09-05 — regression: test-core#src:test/test_c_gtk_window.pas at 7867c5481c01 in step 1/2, `./compiler/pascal26 test/test_c_gtk_window.pas /tmp/test_c_gtk_window26` (auto-filed by twatch)
- 2026-09-05 — C: two conflicting typedefs for one name are accepted silently, last wins
- 2026-09-05 — {$IFOPT X+} is hardwired False, so the wrong arm compiles
- 2026-09-05 — The shape
- 2026-09-05 — Two rows of the same array, two answers
- 2026-09-05 — A representation contract
- 2026-09-05 — The docs snippet gate cannot pass: the pin predates `TMethod` becoming a builtin
- 2026-09-05 — regression: test-core#src:test/test_stackless_gen.pas at f2c6ff3288b4 in step 1/2, `./compiler/pascal26 test/test_stackless_gen.pas /tmp/test_stackless_gen26` (auto-filed by twatch)
- 2026-09-05 — regression: test-core#src:test/test_c_gtk3_stock.pas at 7867c5481c01 in step 1/3, `./compiler/pascal26 -Futest/gtk3stock -I/usr/include/gtk-3.0/ test/test_c_gtk3_stock.pas /tmp/test_c_gtk3_stock26` (auto-filed by twatch)
- 2026-09-05 — Two spellings, four rows each, one diagnostic each
- 2026-09-05 — Resolve Delphi dotted unit-scope names
- 2026-09-05 — The two shapes, and why they report differently
- 2026-09-05 — A doc can name a real flag and still be wrong — about its scope
- 2026-09-05 — xtensa has no ucontext PC/SP offset, so fault-to-raise is refused there
- 2026-09-05 — A job named after its first source file cannot name its failing step
- 2026-09-05 — GTK3 header import final wiring
- 2026-09-05 — A brace in comment prose reports the wrong line, and sometimes the wrong file
- 2026-09-05 — Decided: FPC and Delphi. The rest is deferred, not refused.
- 2026-09-05 — regression: test-core#src:test/strict_fpc_case_fail.pas at f2c6ff3288b4 in step 6/15, `! ./compiler/pascal26 test/test_record_class_var_fail.pas /tmp/test_rcv26 > /tmp/test_rcv.log 2>&1` (auto-filed by twatch)
- 2026-09-05 — `sizeof` of an array typedef name answers the element size
- 2026-09-05 — tstate fingerprints the code and the hardware, but not the emulator toolchain
- 2026-09-05 — `file of T` and untyped `file` are not supported
- 2026-09-05 — Two same-named file-scope statics share one Procs row, so neither can have a symbol
- 2026-09-05 — Two same-named file-scope static variables share one Syms row, and alias
- 2026-09-05 — Inline expansion — remaining slices (branch-with-locals + non-leaf)
- 2026-09-05 — xtensa has no IR_SET_SIGNAL arm
- 2026-09-05 — Repro
- 2026-09-05 — Member access on a procedural-variable call result is rejected
- 2026-09-05 — GTK version selection at the header and soname layer
- 2026-09-05 — bug-p-set-membership-item-constant-truncated-to-32-bits
- 2026-09-05 — A class property cannot be backed by a class var
- 2026-09-05 — regression: test-core#src:test/test_rtti.pas at 31f8b11bfddf in step 1/5, `./compiler/pascal26 test/test_rtti.pas /tmp/test_rtti26` (auto-filed by twatch)
- 2026-09-05 — The silent arm: file-scope initializers report nothing
- 2026-09-05 — regression: test-core#src:test/test_c_gtk_types.pas at 7867c5481c01 in step 1/2, `./compiler/pascal26 test/test_c_gtk_types.pas /tmp/test_c_gtk_types26` (auto-filed by twatch)
- 2026-09-05 — `{$H-}` is accepted and ignored, and it is a record-layout change
- 2026-09-05 — No program declaring a class can build for --esp-profile=bare
- 2026-09-05 — regression: test-core#src:test/test_c_gtk.pas at 7867c5481c01 in step 1/2, `./compiler/pascal26 test/test_c_gtk.pas /tmp/test_c_gtk26` (auto-filed by twatch)
- 2026-09-05 — A field past the first eight bytes of an indirect call's struct result reads back as offset zero
- 2026-09-05 — An undeclared identifier is a warning as a value and an error as a call
- 2026-09-05 — regression: test-core#src:test/test_pchar_from_a_string_literal.pas at f2c6ff3288b4 in step 1/2, `./compiler/pascal26 -Fulib/rtl test/test_pchar_from_a_string_literal.pas /tmp/test_pcharlit26` (auto-filed by twatch)
- 2026-09-05 — A `near:` excerpt can quote an unrelated token stream
- 2026-09-05 — Inline float-returning and record-returning leaf functions
- 2026-09-05 — A type alias drops the enum identity; a set drops its char element kind
- 2026-09-05 — regression: test-core#src:test/test_generator_instance_freed_on_escaping_raise.pas at f2c6ff3288b4 in step 1/3, `./compiler/pascal26 -dPXX_ALLOC_CENSUS test/test_generator_instance_freed_on_escaping_raise.pas /tmp/test_gifer26` (auto-filed by twatch)
- 2026-09-05 — xtensa cannot return a dynamic array from a function
- 2026-09-05 — regression: test-core#src:test/test_char_to_pchar_conversion.pas at f2c6ff3288b4 in step 1/4, `./compiler/pascal26 test/test_char_to_pchar_conversion.pas /tmp/test_ctp26` (auto-filed by twatch)
- 2026-09-05 — Repro
- 2026-09-05 — regression: test-aarch64#src:test/test_rtti.pas at 9d5a4e27029e in step 1/3, `./compiler/pascal26 -dPXX_MANAGED_STRING --target=aarch64 test/test_rtti.pas /tmp/test_aarch64_rtti` (auto-filed by twatch)
- 2026-09-05 — Measured, 2026-08-25
- 2026-09-05 — One proc, N calls, N wasm functions — and only the last one survives
- 2026-09-05 — The measurement
- 2026-09-05 — The ShortString array-of-const leak assertion cannot run — its subject allocates 33 times
- 2026-09-05 — The shape
- 2026-09-05 — regression: test-core#src:test/test_cast_to_array_type.pas at f2c6ff3288b4 in step 1/2, `./compiler/pascal26 test/test_cast_to_array_type.pas /tmp/test_ctat26` (auto-filed by twatch)
- 2026-09-05 — The convention, which was the part nobody had written down
- 2026-09-05 — regression: test-core#src:test/test_char_literal_to_pchar_param.pas at f2c6ff3288b4 in step 1/2, `./compiler/pascal26 -Fulib/rtl test/test_char_literal_to_pchar_param.pas /tmp/test_charlitpchar26` (auto-filed by twatch)
- 2026-09-05 — A multi-dimensional array typedef is half-modelled, and the half is silent
- 2026-09-05 — One prerequisite emitter, not four doors into `NSpecIns`
- 2026-09-05 — The cdecl indirect-call arm never sets up the hidden aggregate-result register on aarch64 and arm32
- 2026-09-05 — P: a forward `interface` declaration is not parsed
- 2026-09-05 — Measured 2026-09-05, fpc 3.2.2 as the oracle
- 2026-09-05 — riscv32 and xtensa accept a ShortString SysOpen path and open nothing
- 2026-09-04 — A generator instance is not freed when an exception escapes the for-in
- 2026-09-04 — A promo-int local in a generator truncates to 32 bits on i386 and arm32
- 2026-09-04 — regression: test-core#src:test/c_asm_in_inline_body.c@2 at 8000b96eab36 in step 7/3, `python3 tools/ast_slot_overloads.py --self-check` (auto-filed by twatch)
- 2026-09-04 — Char vs a frozen string matched only the one shape that carries the legacy tag
- 2026-09-04 — wasm32 has no Variant IR arms, so any Variant assignment traps
- 2026-09-04 — The mechanism, not the instance
- 2026-09-04 — The variadic struct ABI on the three cross targets
- 2026-09-04 — What the refusal is
- 2026-09-04 — regression: lib-test#src:tools/crtl_reachability.py at cdae8cf6580b in step 23/88, `python3 tools/gen_crtl_map.py --check` (auto-filed by twatch)
- 2026-09-04 — What was measured
- 2026-09-04 — `{$FATAL}` is silently ignored, so a guard that means "stop" does not
- 2026-09-04 — Cross backends: a missing retain and a missing release that cancel
- 2026-09-04 — `for x in p^` is refused
- 2026-09-04 — Two independent blockers, and only the first one is the one people know about
- 2026-09-04 — A type alias copied from the RTL can drift, and nothing reports it
- 2026-09-04 — A generic declaration does not shadow an imported generic of the same name
- 2026-09-04 — A stray `end` at unit-implementation top level is silently skipped
- 2026-09-04 — The second architecture, and what the first one was borrowing
- 2026-09-04 — `uses <header>` throws away the header's function bodies, then imports them
- 2026-09-04 — first-ever red: test-core#src:test/test_cross_frozen_ptr_narrow.pas@2 at 6b08a2ae84f2 in step 2/4, `tools/expect_same.sh fpn26/wasm32 "$(tools/run_target.sh wasm32 /tmp/fpn.wasm)" "$(printf '%s\n' 'fld16 T [AB] 2 [AB] […` (auto-filed by twatch)
- 2026-09-04 — A unit's implementation section is visible to its importers
- 2026-09-04 — first-ever red: test-core#src:test/test_cross_futex_through_the_pal.pas at 0f13a3b760a3 in step 2/2, `ok=0; \ for t in native i386 arm32 aarch64 riscv32 xtensa wasm32; do \ case $t in \ native) bin=/tmp/fxpal26; run="";; …` (auto-filed by twatch)
- 2026-09-04 — first-ever red: test-core#src:test/test_cross_os_entropy_through_the_pal.pas@2 at e2eece6e6f94 in step 2/4, `tools/expect_same.sh entpal26/wasm32 "$(tools/run_target.sh wasm32 /tmp/entpal.wasm)" "ENTROPY OK"` (auto-filed by twatch)
- 2026-09-04 — A Pascal `library` unit does not parse
- 2026-09-04 — `SetLength` on a frozen string traps on wasm32
- 2026-09-04 — Four type sizes disagree with FPC — and every value agrees
- 2026-09-04 — `except X as e:` still leaks every exception object — the bound arm was never in the old repro
- 2026-09-04 — A pointer deref loses the shortstring kind, on every target
- 2026-09-04 — `Result` is not recognised as a method-pointer lvalue
- 2026-09-04 — for-in's synthesised index does not carry the deref's low bound
- 2026-09-04 — regression: test-core#src:test/test_rtti_reg.pas at 6b08a2ae84f2 in step 2/2, `tools/expect_same.sh test_rtti_reg26 "$(/tmp/test_rtti_reg26)" "$(printf 'Count: 3\nClass 0: TInterfacedObject\nClass 1…` (auto-filed by twatch)
- 2026-09-04 — A bodiless generic class with `abstract` and a generic parent is rejected
- 2026-09-04 — A builtin call's result cannot be indexed inside parentheses
- 2026-09-04 — regression: test-core#src:test/test_nilpy_c_pointer.npy at 25b8325d4b83 in step 1/2, `./compiler/pascal26 test/test_nilpy_c_pointer.npy /tmp/test_nilpy_c_pointer26` (auto-filed by twatch)
- 2026-09-04 — What the widening bought
- 2026-09-04 — A specialization minted in a unit's implementation blocked the importer's own
- 2026-09-04 — `{$ASSERTIONS}` gating and the `(file, line N)` message suffix
- 2026-09-04 — A generator raising past a managed temp is outside the landing-pad fix
- 2026-09-04 — A parameterless procedural value is only callable bare as an identifier
- 2026-09-04 — first-ever red: test-core#src:test/test_cross_dynarray_slot_store.pas@2 at 8860639aa3ee in step 2/4, `tools/expect_same.sh dsspal26/wasm32 "$(tools/run_target.sh wasm32 /tmp/dsspal.wasm)" "DYNSLOTSTORE OK"` (auto-filed by twatch)
- 2026-09-04 — A class cast cannot index a default property as an assignment target
- 2026-09-04 — wasm32 emitted a negative local index and the module was written anyway
- 2026-09-04 — wasm32 emits a local index of -1, so every NilPy module fails validation
- 2026-09-04 — A define set in an include is invisible to the includer's own include selection
- 2026-09-04 — What it was
- 2026-09-04 — One cause, three refusals
- 2026-09-04 — A `generic function` cannot be declared in a unit
- 2026-09-04 — NilPy thread-clone cannot start a thread on aarch64 or arm32
- 2026-09-04 — An exception in a stackful generator body never reaches the for-in's handler
- 2026-09-04 — The NilPy PAL issues raw syscalls, so every file body traps on wasm32
- 2026-09-04 — first-ever red: test-core#src:test/test_ansiterm_raw_write.pas@1 at 124d83cf494b in step 28/3, `NOTTY="$(printf 'write-through-pal\nsize FALSE 80 24\nraw round-trip survived\nkey 0')"; \ PTY="$(printf 'write-through…` (auto-filed by twatch)
- 2026-09-04 — `QWord div` / `mod` by a literal >= 2^63 divides SIGNED and returns a wrong value
- 2026-09-04 — crtl signal handlers: installed successfully, never fire
- 2026-09-04 — first-ever red: test-core#src:test/test_cross_typeinfo_dataref.pas@2 at 11324ff49f9e in step 2/4, `tools/expect_same.sh tidref26/wasm32 "$(tools/run_target.sh wasm32 /tmp/tidref.wasm)" "$(printf 'enums OK\nheader Integ…` (auto-filed by twatch)
- 2026-09-04 — `p^` on a frozen string is unlowered on wasm32 (read side only)
- 2026-09-04 — regression: test-threads#src:test/test_loadfile_shortstring.pas at 0aaaebfefaa8 in step 2/5, `tools/expect_same.sh test_lfss26.1 "$(/tmp/test_lfss26 | tail -1)" "LOADFILE SHORTSTRING OK"` (auto-filed by twatch)
- 2026-09-04 — regression: test-i386#src:test/test_stackless_gen.pas at cf9b14600039 in step 2/3, `./compiler/pascal26 test/test_stackless_gen.pas /tmp/test_i386_slg_x64` (auto-filed by twatch)
- 2026-09-04 — An aggregate argument is a pointer by construction on aarch64
- 2026-09-04 — `TMethod` is not defined
- 2026-09-04 — The real `tyShortString`, and why it is cheaper than it looks
- 2026-09-04 — P: a different specialization of the same template, inside its own body
- 2026-09-04 — for-in over a call returning a static array
- 2026-09-04 — first-ever red: test-core#src:test/test_cross_frozen_ptr_in_field.pas@2 at 57b66faf864a in step 2/4, `tools/expect_same.sh fpfld26/wasm32 "$(tools/run_target.sh wasm32 /tmp/fpfld.wasm)" "$(printf 'printed A\nFROZENPTRFIEL…` (auto-filed by twatch)
- 2026-09-04 — The exit-observable share ratchet was red before anything drifted
- 2026-09-04 — `uses <unit> in '<file>'` — the standard Delphi/FPC spelling
- 2026-09-04 — What is known
- 2026-09-04 — `type T = type byte;` — the distinct-type declaration is not parsed
- 2026-09-04 — An interface `as`-cast retains on every execution and releases once per scope
- 2026-09-04 — A ShortString in `array of const` boxes an unusable pointer
- 2026-09-04 — Rung 3 — the image
- 2026-09-04 — wasm32: a frozen string through a pointer in a record field compares as the field's address
- 2026-09-04 — `<string.h>` declares `strsignal()`, defined in `signal.c`
- 2026-09-04 — `SizeOf(<type name>)` is settled against a KIND that cannot express the size
- 2026-09-04 — The list, with the file that wants each
- 2026-09-04 — A parameter after a by-value set parameter reads zero on xtensa
- 2026-09-04 — crtl on arm32: every syscall-guarded body is inert
- 2026-09-04 — waitpid on riscv32: -1/ENOSYS, with fork working
- 2026-09-04 — A cast to a named array type is not recognised
- 2026-09-04 — `{$packrecords c}` is refused
- 2026-09-04 — The gap
- 2026-09-04 — A managed local that survives a yield is released at every yield (cross only)
- 2026-09-04 — `Str` of a Boolean formats it as a digit
- 2026-09-04 — `UnicodeChar` is 4 bytes here and 2 in FPC
- 2026-09-04 — `{$CLAIM xyz}` — a define that crosses unit boundaries
- 2026-09-04 — offsetof in a static array initializer discards the list
- 2026-09-04 — regression: test-core#src:test/test_stackless_gen.pas at cf9b14600039 in step 1/2, `./compiler/pascal26 test/test_stackless_gen.pas /tmp/test_stackless_gen26` (auto-filed by twatch)
- 2026-09-04 — A Nil Python managed local in an unwound frame is never released
- 2026-09-03 — A const shortstring parameter arrives as NUL bytes under the byte-prefix mode
- 2026-09-03 — A store through a pointer loses the `string[N]` capacity clamp
- 2026-09-03 — regression: test-threads#src:test/test_nilpy_thread_clone.npy at 08f7de0715a8 in step 2/6, `tools/expect_same.sh test_npy_clone26 "$(/tmp/test_npy_clone26)" "$(printf 'tid nonzero = True\nchild ran = 7')"` (auto-filed by twatch)
- 2026-09-03 — regression: lib-test#src:test/crtl_poll_set.c at 2749b12c2e93 in step 2/3, `tools/expect_same.sh crtl_poll_set "$(/tmp/crtl_poll_set)" "$(printf 'timeout r=0 rev0=0 rev1=0\nready r=1 rev0=0 rev1i…` (auto-filed by twatch)
- 2026-09-03 — regression: lib-test#src:test/cmath_no_pascal_hijack.c at 2749b12c2e93 in step 2/2, `tools/expect_same.sh cmath_no_pascal_hijack "$(/tmp/cmath_no_pascal_hijack)" "$(printf 'pow=1024 1.41421\nlog=1.3862943…` (auto-filed by twatch)
- 2026-09-03 — An array of shortstrings is corrupt under the byte-prefix mode
- 2026-09-03 — Storing into an element of an array of frozen strings bus-errors on xtensa
- 2026-09-03 — A one-char string literal on the right of a frozen concat becomes integer addition
- 2026-09-03 — regression: lib-test#src:test/crtl_atexit.c at 2749b12c2e93 in step 8/10, `tools/expect_same.sh crtl_atexit.3 "$(/tmp/crtl_atexit n)" "registered ok=100 bad=0"` (auto-filed by twatch)
- 2026-09-03 — regression: test-core#src:test/test_field_rooted_nested_dyn_frozen_index.pas@1 at 91b4b77ec631 in step 2/2, `tools/expect_same.sh sweep_fieldrooted_frozen_default "$(/tmp/sweep_fieldrooted_frozen_d)" "$(cat test/test_field_roote…` (auto-filed by twatch)
- 2026-09-03 — wasm32 frozen-string comparison: the VARIABLE operand arm is wrong
- 2026-09-03 — regression: lib-test#src:test/cmath_lround.c at 2749b12c2e93 in step 2/2, `tools/expect_same.sh cmath_lround "$(/tmp/cmath_lround)" "$(printf '0.5 lround=1 llround=1 lrint=0\n1.5 lround=2 llroun…` (auto-filed by twatch)
- 2026-09-03 — SetLength on a shortstring traps on wasm32
- 2026-09-03 — `PShortString` derefs a `ShortString` at the wrong prefix offset
- 2026-09-03 — `r.v[0]` on a field of type `array of array of T` types as T, not `array of T`
- 2026-09-03 — The case
- 2026-09-03 — regression: test-debug-g#src:tools/compiler_srchash.sh at 5d083bd91f9a in step 1/2, `livesrc=$(tools/compiler_srchash.sh); \ stampsrc=$(sed -n 's/^srchash //p' compiler/.pascal26.fixedpoint); \ if [ "$liv…` (auto-filed by twatch)
- 2026-09-03 — SetLength is refused for any frozen string that is not a plain symbol
- 2026-09-03 — A frozen string compared to an AnsiString is FALSE under the flag on x86-64
- 2026-09-03 — The `near:` context window is stale after a token splice
- 2026-09-03 — A frozen string argument is empty through a constructor or a virtual call
- 2026-09-03 — bug(T): the full-suite hook keys on the TIER NAME, so it refuses the repro line every auto-filed regression ticket prints
- 2026-09-03 — A frozen dynamic-array FIELD records a junk element capacity
- 2026-09-03 — The measurement
- 2026-09-03 — String ordering comparison ignores content on x86-64 under the byte-prefix mode
- 2026-09-03 — regression: test-core#src:test/test_alias_cast_assign_target.pas at 91b4b77ec631 in step 7/3, `if ./compiler/pascal26 test/test_setlength_cast_refusal.pas /tmp/test_slcastref26 2>&1 \ | grep -q 'SetLength expects a…` (auto-filed by twatch)
- 2026-09-03 — regression: lib-test#src:test/cmath_nan_payload.c at 2749b12c2e93 in step 2/2, `tools/expect_same.sh cmath_nan_payload "$(/tmp/cmath_nan_payload)" "$(printf 'empty 7FF8000000000000\n1 7FF800000000000…` (auto-filed by twatch)
- 2026-09-03 — PChar of a frozen string skips 8 bytes whatever the prefix width is
- 2026-09-03 — regression: test-core#src:test/test_string_n_container_strides.pas at 71a66c7d1437 in step 12/4, `tools/expect_same.sh test_strn_container26 "$(/tmp/test_strn_container26)" "$(printf 'openp1 1\nopenp2 1\nopenp20 1\nop…` (auto-filed by twatch)
- 2026-09-03 — regression: test-core#src:test/test_sizeof_user_name_shadows_builtin.pas at 5ad048c2d9ae in step 2/2, `tools/expect_same.sh test_sizeof_shadow26 "$(/tmp/test_sizeof_shadow26)" "$(printf 'a 12\nb 10\nc TRUE\nd 1\ne 1\nf 8\n…` (auto-filed by twatch)
- 2026-09-03 — i386 refuses a frozen record field write under the byte-prefix mode
- 2026-09-03 — String concat segfaults on x86-64 under the byte-prefix mode
- 2026-09-03 — SetLength on a frozen string is unsupported on riscv32
- 2026-09-03 — i386: comparing two elements of an array of frozen strings is FALSE
- 2026-09-03 — A field-rooted `array of array of string[N]` indexes as a Char
- 2026-09-03 — A NilPy clone entry receives a raw word where it expects a Variant address
- 2026-09-03 — i386: Copy and Pos segfault under the byte-prefix mode
- 2026-09-03 — The wasm32 coverage report shows one refusal per body and hides the others
- 2026-09-03 — A `private(...)` clause for `parallel for`
- 2026-09-03 — Comparing a frozen record FIELD to a literal crashes or answers FALSE
- 2026-09-03 — A variadic C function imported into Pascal is callable only with its fixed prefix
- 2026-09-03 — regression: test-core#src:test/test_string_n_container_strides.pas at 91b4b77ec631 in step 12/4, `tools/expect_same.sh test_strn_container26 "$(/tmp/test_strn_container26)" "$(printf 'openp1 1\nopenp2 1\nopenp20 1\nop…` (auto-filed by twatch)
- 2026-09-03 — A frozen record field is refused by overload resolution against an AnsiString parameter
- 2026-09-03 — regression: test-emit-obj#src:test/test_esp_hello.pas@1 at 7fff15ddc1eb in step 27/8, `for t in "--target=riscv32 --platform=esp" "--target=xtensa --platform=esp"; do \ ./compiler/pascal26 --emit-obj $t tes…` (auto-filed by twatch)
- 2026-09-03 — Indexing a frozen string through a pointer deref reads the wrong byte
- 2026-09-03 — A frozen record field as a concat operand segfaults
- 2026-09-03 — A silent `test` assertion makes the harness report something else, confidently
- 2026-09-03 — Write of a frozen string through a typed pointer prints garbage (x86-64)
- 2026-09-03 — regression: test-aarch64#src:test/test_field_rooted_nested_dyn_frozen_index.pas@1 at 91b4b77ec631 in step 2/2, `tools/expect_same.sh aarch64/fieldrooted_nested_frozen_default "$(tools/run_target.sh aarch64 /tmp/test_aarch64_fieldro…` (auto-filed by twatch)
- 2026-09-03 — regression: lib-test#src:test/cmath_integral_family.c at 2749b12c2e93 in step 2/2, `tools/expect_same.sh cmath_integral_family "$(/tmp/cmath_integral_family)" "$(printf 'fabs(-0)=+0\ntrunc(-0.5)=-0\nroun…` (auto-filed by twatch)
- 2026-09-02 — Three NilPy dispatch regressions, and why nothing caught them
- 2026-09-02 — An 8-byte by-value record loses its second word through virtual and indirect calls, on every 32-bit backend
- 2026-09-02 — EmitLoadVar truncates a dyn-array handle to its element width
- 2026-09-02 — riscv32 and xtensa read a `var` dynamic-array parameter one deref short
- 2026-09-02 — Sixteen was the stride, not the limit anyone chose
- 2026-09-02 — regression: test-core#src:test/test_anonymous_enum_and_subrange_types.pas at 5be4c0665c1e in step 2/2, `tools/expect_same.sh test_anontype26 "$(/tmp/test_anontype26 | tail -1)" "ALL OK"` (auto-filed by twatch)
- 2026-09-02 — GNU inline asm with a non-empty template
- 2026-09-02 — A Char-array ROW of a 2-D array is not a string
- 2026-09-02 — The list, from attempting the target
- 2026-09-02 — A `string[N]` element keeps its capacity in one container and loses it in three
- 2026-09-02 — regression CASCADE: 38 jobs newly red in 5dbcc861e..fc01c8094 (87 commits) — auto-filed by twatch
- 2026-09-02 — xtensa allocates twice per virtual call returning a string, and leaks one
- 2026-09-02 — SizeOf answers 8 for a `string[10]` that occupies 18 bytes
- 2026-09-02 — regression: optdiff#shard4/12 at d74c7fbe9ffe in step 1/1, `tools/optdiff.sh --shard 4/12` (auto-filed by twatch)
- 2026-09-02 — `--dce` miscompiles every threaded program, and `-O3` turns it on
- 2026-09-02 — A function returning a function pointer, refused for having 16 parameters
- 2026-09-02 — Block scope is the arm the file-scope fix did not reach
- 2026-09-02 — regression: test-core#src:test/c_asm_in_inline_body.c@2 at 2d6e7d5c26db in step 7/3, `python3 tools/ast_slot_overloads.py --self-check` (auto-filed by twatch)
- 2026-09-02 — `Write(f, x)` inside a method named `write` bound to the member whatever its arity
- 2026-09-02 — A Char array through a FIELD or a DEREF is not a string
- 2026-09-02 — A managed temp in a frame unwound by an exception is never released
- 2026-09-02 — regression: test-core#src:test/test_c_gtk.pas at 1236bf31f930 in step 1/2, `./compiler/pascal26 test/test_c_gtk.pas /tmp/test_c_gtk26` (auto-filed by twatch)
- 2026-09-02 — first-ever red: test-core#src:test/c_crtl_mount_and_prio.c at 1236bf31f930 in step 2/2, `tools/expect_same.sh c_mntprio26 "$(/tmp/c_mntprio26)" "$(printf '1 1 1\n2 -1 1\n3 3 0\n4 -1 1\n5 0\n6 0\n7 [/dev/sda1]…` (auto-filed by twatch)
- 2026-09-02 — regression: tools-devtest#00 red at 0c99981669b7 (auto-filed by twatch)
- 2026-09-02 — Labels-as-values is the whole of the lua regression
- 2026-09-02 — A const and a routine of one name silently resolve to the const
- 2026-09-02 — An unrelated declaration changes the emitted body of a crtl function
- 2026-09-02 — regression: test-core#src:test/test_c_gtk_call.pas at 1236bf31f930 in step 1/2, `./compiler/pascal26 test/test_c_gtk_call.pas /tmp/test_c_gtk_call26` (auto-filed by twatch)
- 2026-09-02 — `SizeOf(N)` rejects twelve builtin type names that `var v: N` accepts
- 2026-09-02 — C: sizeof of a subscript through a pointer-to-pointer answers the pointer size
- 2026-09-02 — regression: test-core#src:test/test_setlen_in_parallel_for_body.pas at 456361785e34 in step 2/2, `tools/expect_same.sh test_setlen_parfor26 "$(/tmp/test_s` (auto-filed by twatch)
- 2026-09-02 — A refcount test passes at -O2 and fails at -O0/-O1
- 2026-09-02 — regression: lib-test#src:test/lib_synapse_transitive_unit.pas at 889bfcf73256 in step 1/2, `stable_linux_amd64/default/pinned --mimic-fpc -Fuexternal/synapse -Fulib/rtl -Fulib/rtl/platform/posix test/lib_synapse…` (auto-filed by twatch)
- 2026-09-02 — A struct through `...` is a pointer, not the bytes
- 2026-09-02 — One construct, two spellings, and only the literal was ever tested
- 2026-09-02 — regression: test-core#src:test/test_typeinfo_typedata.pas at 5be4c0665c1e in step 2/2, `tools/expect_same.sh test_typeinfo_typedata26 "$(/tmp/test_typeinfo_typedata26)" "$(printf 'ShortInt kind=1 name=ShortI…` (auto-filed by twatch)
- 2026-09-02 — Generic ASTLeft/ASTRight walkers vs kinds that overload those fields
- 2026-09-02 — A nested `for` in a `parallel for` body is a compile error
- 2026-09-02 — What is missing
- 2026-09-02 — A cast to a string alias silently drops a following index
- 2026-09-02 — regression: test-core#src:test/test_multithreading.pas@1 at 9c76d9ba089c in step 2/2, `/tmp/test_multithreading26 | grep -q "multithreading test completed successfully"` (auto-filed by twatch)
- 2026-09-02 — regression: test-threads#src:test/test_nilpy_thread_clone.npy at dc018685fd56 in step 2/6, `tools/expect_same.sh test_npy_clone26 "$(/tmp/test_npy_clone26)" "$(printf 'tid nonzero = True\nchild ran = 7')"` (auto-filed by twatch)
- 2026-09-02 — regression: test-core#src:test/test_c_gtk_types.pas at 1236bf31f930 in step 1/2, `./compiler/pascal26 test/test_c_gtk_types.pas /tmp/test_c_gtk_types26` (auto-filed by twatch)
- 2026-09-02 — regression: test-pascal-conformance#shard2/6 red at 27424c927b65 (auto-filed by twatch)
- 2026-09-02 — regression: lib-test#src:test/lib_synapse.pas at 889bfcf73256 in step 1/2, `stable_linux_amd64/default/pinned --mimic-fpc -Fuexternal/synapse -Fulib/rtl -Fulib/rtl/platform/posix test/lib_synapse…` (auto-filed by twatch)
- 2026-09-02 — A growing dynamic array leaves its whole geometric series behind as garbage
- 2026-09-02 — bug-a-set-membership-truncates-the-test-value-on-32-bit-backends
- 2026-09-02 — Frozen compare: `IntToTypeKind` where `IRStrTkOf` is required (arm32), and no kind at all (x86-64)
- 2026-09-02 — regression: test-emit-obj#src:test/c_obj_data_import.c at 68a99471d25c in step 11/11, `if command -v gcc >/dev/null 2>&1; then \ printf '#include <stdio.h>\nint somebody_elses_global = 99;\nint read_it(void…` (auto-filed by twatch)
- 2026-09-02 — regression: test-core#src:test/c_crtl_signal_and_wait.c at 0affa5fa87f4 in step 2/2, `tools/expect_same.sh c_sigwait26 "$(/tmp/c_sigwait26)" "$(printf '1 0\n2 0\n3 1\n4 0\n5 0\n6 10\n7 -1 1\n8 0\n9 0 10\n1…` (auto-filed by twatch)
- 2026-09-02 — The constructor ladder is the fifth copy, and it asked neither question
- 2026-09-02 — Rung 4: 257 applets
- 2026-09-02 — A file-scope pointer-to-array SEGFAULTS on indexing; the identical local is correct
- 2026-09-02 — regression: lib-test#src:test/lib_synapse_ssl.pas at 889bfcf73256 in step 1/3, `stable_linux_amd64/default/pinned --mimic-fpc -dPXX_DYNLIB_LIBC -Fuexternal/synapse -Fulib/rtl -Fulib/rtl/platform/posi…` (auto-filed by twatch)
- 2026-09-02 — Five of the six red optdiff shards are one bug, not five
- 2026-09-02 — Fold the consensus dead-branch core at every level
- 2026-09-02 — A user type whose name shadows a builtin is unusable as a variable's type
- 2026-09-02 — regression: test-c-conformance#shard2/6 at 4a8f843f2ba5 in step 2/2, `tools/run_c_conformance.sh ./compiler/pascal26 --shard 2/6` (auto-filed by twatch)
- 2026-09-02 — regression: test-core#src:test/test_c_gtk_window.pas at 1236bf31f930 in step 1/2, `./compiler/pascal26 test/test_c_gtk_window.pas /tmp/test_c_gtk_window26` (auto-filed by twatch)
- 2026-09-02 — A fresh dyn-array result passed to an open-array param is never freed
- 2026-09-02 — utimensat / futimens
- 2026-09-02 — i386 refuses a by-value record parameter on the internal convention, so `lib/rtl/image.pas` does not build
- 2026-09-02 — regression: test-core#src:test/test_exception_unhandled.pas@3 at 3d4801b6abc3 in step 53/47, `/tmp/next-test_multithreading26 | grep -q "multithreading test completed successfully"` (auto-filed by twatch)
- 2026-09-02 — regression: test-pascal-conformance#shard1/6 red at 27424c927b65 (auto-filed by twatch)
- 2026-09-02 — `sizeof(*s.fp)` on a pointer-to-array struct member answers the pointer size
- 2026-09-02 — `ConstIntCastWidth` is the third copy of the builtin type-name table
- 2026-09-02 — regression: test-pascal-conformance#shard3/6 red at 27424c927b65 (auto-filed by twatch)
- 2026-09-02 — regression: test-pascal-conformance#shard0/6 at aac20e75ed1f in step 1/1, `tools/run_pascal_conformance.sh ./compiler/pascal26 libr` (auto-filed by twatch)
- 2026-09-02 — regression: test-lua-cross#src:tools/compiler_srchash.sh at 1236bf31f930 in step 2/2, `if [ ! -f "library_candidates/lua/src/lua.h" ]; then \ echo "test-lua-cross: SKIP — no lua tree at library_candidates/l…` (auto-filed by twatch)
- 2026-09-02 — regression: test-core#src:test/test_c_gtk3_stock.pas at 1236bf31f930 in step 1/3, `./compiler/pascal26 -Futest/gtk3stock -I/usr/include/gtk-3.0/ test/test_c_gtk3_stock.pas /tmp/test_c_gtk3_stock26` (auto-filed by twatch)
- 2026-09-02 — riscv32 and xtensa still refuse aggregate results via virtual/indirect calls, under a ticket marked done
- 2026-09-02 — bug-a-method-pointer-record-is-hard-sized-16-bytes-on-32-bit-targets
- 2026-09-02 — A stackful generator is x86-64-only, so `examples/chess` cannot target anything else
- 2026-09-02 — regression: test-core#src:test/cfn_return_fnptr_b105.c at 65b719ab48ae in step 1/2, `./compiler/pascal26 test/cfn_return_fnptr_b105.c /tmp/cfn_return_fnptr_b10526` (auto-filed by twatch)
- 2026-09-02 — Prune statements after a return at -O0
- 2026-09-02 — Labels-as-values on the remaining 32-bit backends
- 2026-09-02 — The xtensa statement walker emits any unnamed node kind through a silent `else`
- 2026-09-02 — Threadsafe heap — optimize + cross-target (M5)
- 2026-09-02 — optdiff stopped sweeping the threading corpus, and its next green will be false
- 2026-09-02 — One program, three backend gaps
- 2026-09-02 — A function returning a dynamic array is refused on every cross target
- 2026-09-02 — regression: test-lua#src:tools/compiler_srchash.sh at 1236bf31f930 in step 2/2, `if [ ! -f "library_candidates/lua/src/lua.h" ]; then \ echo "test-lua: SKIP — no lua tree at library_candidates/lua/src…` (auto-filed by twatch)
- 2026-09-02 — DCE on a C program drops `main`
- 2026-09-02 — A cloned thread has no sigaltstack, so its stack overflow is unhandleable
- 2026-09-02 — NilPy carries three private copies of the float type table
- 2026-09-02 — Rung 3 — 141 applets, separately compiled, really linked
- 2026-09-02 — Storing a `char` into a `string[N]` through a pointer compiles on x86-64 only
- 2026-09-02 — bug-a-a-fresh-array-result-has-no-owner-as-a-copy-or-concat-operand
- 2026-09-01 — Managed locals leak on an unwind on wasm32 and xtensa
- 2026-09-01 — regression: lib-test#src:test/lib_dns_resolve.pas at 021cd94f10a9 in step 1/2, `stable_linux_amd64/default/pinned -Fulib/rtl/platform/posix test/lib_dns_resolve.pas /tmp/lib_dns_resolve` (auto-filed by twatch)
- 2026-09-01 — The windowed xtensa prologue moves `sp` with a plain `addi`, where the ABI requires `MOVSP`
- 2026-09-01 — regression: test-xtensa#src:test/test_cross_managed_strings.pas at 6a38839c2f81 in step 18/32, `./compiler/pascal26 --target=xtensa --platform=posix --x` (auto-filed by twatch)
- 2026-09-01 — The address of an external routine is refused on i386 and xtensa
- 2026-09-01 — One shape out of seven
- 2026-09-01 — Managed locals leak at ORDINARY scope exit on wasm32, and a Variant local traps
- 2026-09-01 — A static array of promo ints releases only element 0
- 2026-09-01 — The ESP object writer exports only app_main
- 2026-09-01 — A caught exception leaks every managed field under --threadsafe (x86-64)
- 2026-09-01 — regression: test-asm#src:test/test_asm_emit_x64.pas at a0c5a21e2c2e in step 1/2, `./compiler/pascal26 -Fucompiler test/test_asm_emit_x64.p` (auto-filed by twatch)
- 2026-09-01 — An object neither exports nor imports data symbols, and links silently wrong
- 2026-09-01 — bug-a-a-dynamic-array-reaching-a-pointer-destination-has-no-owner
- 2026-09-01 — An indirect call returning a dynamic array leaks every allocation
- 2026-09-01 — Reentrant heap lock, and the per-thread arenas it was really for
- 2026-09-01 — regression: test-core#src:test/crtl_tiny_regex_match.c at 6e622be95680 in step 2/2, `tools/expect_same.sh crtl_tiny_regex_match26 "$(/tmp/crt` (auto-filed by twatch)
- 2026-09-01 — A by-value struct parameter is passed as a POINTER to every C-ABI callee
- 2026-09-01 — What is left of the two-predicates ticket
- 2026-09-01 — The DWARF target set is written down three times, and the only correct statement is dead code
- 2026-09-01 — `p^[i]` is only correct when the pointer is a plain identifier
- 2026-09-01 — An --emit-obj object linked into a non-pxx program runs no initialisers
- 2026-09-01 — regression: test-cjson#src:tools/compiler_srchash.sh at e5a21152b5d1 in step 2/2, `if [ ! -f "library_candidates/cjson/src/cJSON.h" ]; then` (auto-filed by twatch)
- 2026-09-01 — An array field indexed through a record-pointer cast loses its element type
- 2026-09-01 — A 2D-array row passed as a `const` array param still segfaults
- 2026-09-01 — decide-does-raise-of-an-existing-object-transfer-ownership
- 2026-09-01 — regression: lib-test#src:test/lib_dns_facade.pas at 021cd94f10a9 in step 1/2, `stable_linux_amd64/default/pinned -Fulib/rtl/platform/posix test/lib_dns_facade.pas /tmp/lib_dns_facade` (auto-filed by twatch)
- 2026-09-01 — A Pascal cdecl program emits no data symbols either
- 2026-09-01 — `a[i]^` derefs 8 bytes for a 4-byte element (plain spelling)
- 2026-09-01 — Two threads raising object exceptions corrupt the heap (x86-64, --threadsafe)
- 2026-09-01 — regression: test-core#src:test/test_rtl_fpc_compat_helpers.pas at 970eabd8eadf in step 2/2, `tools/expect_same.sh test_rtl_fpc_compat_helpers26 "$(/tmp/test_rtl_fpc_compat_helpers26 | tail -1)" "total ok 23 / 23"` (auto-filed by twatch)
- 2026-09-01 — regression: test-core#src:test/test_header_static_body.pas at f9e495823dce in step 14/33, `out=$(./compiler/pascal26 /tmp/cdiag_mod.c /tmp/cdiag_mo` (auto-filed by twatch)
- 2026-09-01 — regression: test-core#src:test/test_exception_unhandled.pas@3 at f9e495823dce in step 53/47, `/tmp/next-test_multithreading26 | grep -q "multithreadin` (auto-filed by twatch)
- 2026-09-01 — regression: lib-test#src:test/lib_dns_multins.pas at 021cd94f10a9 in step 1/2, `stable_linux_amd64/default/pinned -Fulib/rtl/platform/posix test/lib_dns_multins.pas /tmp/lib_dns_multins` (auto-filed by twatch)
- 2026-09-01 — `TypeKind = tyRecord` is not a guard, and 20 reads use it as one
- 2026-09-01 — bug-a-an-interface-returned-by-a-function-leaks-unless-it-is-assigned
- 2026-09-01 — regression: test-core#src:test/test_rust_module_items.rs at 99af5f3270cf in step 16/5, `./compiler/pascal26 /tmp/rust_unity.rs /tmp/test_rust_un` (auto-filed by twatch)
- 2026-09-01 — A pointer cast of an already-owned string retains it for the rest of the program
- 2026-09-01 — busybox rung 2 — more than one applet, then `ash`
- 2026-09-01 — regression: test-emit-obj#src:tools/compiler_srchash.sh at c1f7471fe1d0 in step 95/57, `if command -v gcc >/dev/null 2>&1; then \ printf '#inclu` (auto-filed by twatch)
- 2026-09-01 — A static array of managed-field records loses its length as an open-array argument
- 2026-09-01 — bug-a-an-exception-handler-arm-finalizes-its-managed-temp-after-the-merge
- 2026-09-01 — x86-64 object output is position-dependent, so a link needs `-no-pie`
- 2026-09-01 — regression: test-threads#src:test/test_exception_threads_race.pas at e7be39f9a505 in step 2/4, `tools/expect_same.sh test_exception_threads_race26 "$(/t` (auto-filed by twatch)
- 2026-09-01 — Two different binaries both pass the self-host fixedpoint for one source tree
- 2026-09-01 — The owned-string release predicate is hand-copied across five backends
- 2026-09-01 — An i386 --emit-obj object still never runs its initialisers
- 2026-09-01 — regression: lib-test#src:test/lib_dns_tcp.pas at 021cd94f10a9 in step 1/2, `stable_linux_amd64/default/pinned -Fulib/rtl/platform/posix test/lib_dns_tcp.pas /tmp/lib_dns_tcp` (auto-filed by twatch)
- 2026-09-01 — regression: test-core#src:test/test_thread_api_no_uses.pas at 970eabd8eadf in step 1/2, `./compiler/pascal26 test/test_thread_api_no_uses.pas /tmp/test_thread_api_no_uses26` (auto-filed by twatch)
- 2026-09-01 — regression: test-core#src:test/c_crtl_enosys_stubs.c at 3f73ad2f6a08 in step 2/2, `tools/expect_same.sh c_crtl_enosys26 "$(/tmp/c_crtl_enosys26)" "$(printf 'fork: -1 1\nvfork: -1 1\nchroot: -1 1\nsetuid…` (auto-filed by twatch)
- 2026-09-01 — Two objects cannot be linked together
- 2026-09-01 — regression: test-aarch64#src:test/test_managed_dynarray_field_leaks.pas at 0d3d061121a7 in step 4/5, `tools/assert_no_leak.sh aarch64/managed_dynarray_field 50 tools/run_target.sh aarch64 $(TESTTMP)/mdf_aarch64` (auto-filed by twatch)
- 2026-09-01 — regression: lib-test#src:test/lib_dns_cache_facade.pas at 021cd94f10a9 in step 1/2, `stable_linux_amd64/default/pinned -Fulib/rtl/platform/posix test/lib_dns_cache_facade.pas /tmp/lib_dns_cache_facade` (auto-filed by twatch)
- 2026-09-01 — regression: lib-test#src:tools/crtl_reachability.py at 351c10608aae in step 23/66, `python3 tools/gen_crtl_map.py --check` (auto-filed by twatch)
- 2026-09-01 — Thread-local storage: threads share one `fs` base
- 2026-09-01 — The managed-ownership campaign is producing one regression per landing
- 2026-09-01 — regression: test-lua-cross#src:tools/compiler_srchash.sh at e5a21152b5d1 in step 2/2, `if [ ! -f "library_candidates/lua/src/lua.h" ]; then \ e` (auto-filed by twatch)
- 2026-09-01 — `static` stopped at the data side
- 2026-09-01 — bug-a-pchar-of-a-computed-string-leaks-the-string
- 2026-09-01 — regression: test-core#src:test/cva_arg_pointer_pointee_b201.c at 6e622be95680 in step 2/2, `/tmp/cva_arg_pointer_pointee_b20126; tools/expect_same.s` (auto-filed by twatch)
- 2026-09-01 — bug-a-a-computed-string-in-an-array-of-const-leaks-its-temporary
- 2026-09-01 — regression: test-threads#src:test/test_threadsafe_refcount_lockfree.pas at 1e37a55f6748 in step 2/2, `tools/expect_same.sh test_threadsafe_refcount_lockfree26 "$(/tmp/test_threadsafe_refcount_lockfree26 | tail -n 2)" "$(p…` (auto-filed by twatch)
- 2026-09-01 — Every string literal assignment heap-copies on four backends
- 2026-09-01 — The `--emit-obj` refusal names a target set that excludes x86-64
- 2026-09-01 — The div-by-zero check is still missing on xtensa
- 2026-09-01 — An 8-byte scalar is over-aligned inside a struct on i386
- 2026-09-01 — regression: test-sqlite-threads-aarch64#src:tools/compiler_srchash.sh at fc9139c264df in step 2/2, `tools/run_sqlite_thread_test.sh aarch64 ./compiler/pasca` (auto-filed by twatch)
- 2026-09-01 — An i386 object from the C frontend carries text relocations
- 2026-09-01 — `--shared` for compiled sources, not just `.asm`
- 2026-09-01 — stat() returned st_dev/st_rdev in the kernel-internal encoding, and dev_t was 32 bits at ILP32
- 2026-09-01 — regression: lib-test#src:test/lib_dns_aaaa.pas at 021cd94f10a9 in step 1/2, `stable_linux_amd64/default/pinned -Fulib/rtl/platform/posix test/lib_dns_aaaa.pas /tmp/lib_dns_aaaa` (auto-filed by twatch)
- 2026-09-01 — A shared library never runs its initialisation
- 2026-09-01 — xtensa has no `{$Q+}` overflow-check emitter, so it wraps silently
- 2026-09-01 — bug-a-managed-string-arg-temp-predicate-is-duplicated-seven-times-and-guarded-nowhere
- 2026-09-01 — i386: a C `main` gets argc and argv swapped
- 2026-09-01 — ParamSize and AllocParam disagree about a 5-8 byte by-value record
- 2026-09-01 — `TypeSize` answers 8 for a record, and the warning is where no caller looks
- 2026-09-01 — A Pascal global cannot import a C global
- 2026-09-01 — The mandatory fixedpoint step reports success from a stale stamp
- 2026-09-01 — regression: test-xtensa#src:test/test_signal_handler_callback_b336.pas at 370170edaffe in step 1/3, `./compiler/pascal26 --target=xtensa --platform=posix --x` (auto-filed by twatch)
- 2026-09-01 — The pin cannot build ANY C program for i386 or arm32
- 2026-09-01 — A standing red monopolises the one detail block
- 2026-09-01 — regression: test-core#src:test/test_interface_byval_param_no_leak.pas at 3f73ad2f6a08 in step 2/2, `tools/expect_same.sh test_ifbyval26 "$(/tmp/test_ifbyval26 | tail -1)" "total ok 25 / 25"` (auto-filed by twatch)
- 2026-09-01 — `TList` has no `List` property
- 2026-09-01 — Busybox the way busybox builds
- 2026-09-01 — bug-a-a-managed-string-reaching-a-pointer-destination-has-no-owner
- 2026-09-01 — `{$Q+}` overflow checking has no runtime helper on arm32 and riscv32
- 2026-09-01 — regression: lib-test#src:test/lib_dns_chase.pas at 021cd94f10a9 in step 1/2, `stable_linux_amd64/default/pinned -Fulib/rtl/platform/posix test/lib_dns_chase.pas /tmp/lib_dns_chase` (auto-filed by twatch)
- 2026-09-01 — A comma-indexed multi-dim subscript is not parsed through a cast or a call result
- 2026-09-01 — bug-a-a-variant-converted-to-ansistring-leaks-whenever-the-result-is-a-temporary
- 2026-09-01 — regression: test-core#src:test/test_multithreading.pas@1 at 039be8b4aa97 in step 2/2, `/tmp/test_multithreading26 | grep -q "multithreading test completed successfully"` (auto-filed by twatch)
- 2026-09-01 — The managed-string index COW rule is spelled seven times, one of them ungreppable
- 2026-09-01 — bug-a-a-variant-or-promo-FIELD-of-a-record-is-not-a-managed-member-so-its-payload-leaks
- 2026-09-01 — The arm32-hosted compiler wants 4x the arenas, then dies unchecked at ENOMEM
- 2026-09-01 — bug-a-a-case-arm-finalizes-its-managed-temp-after-the-merge
- 2026-09-01 — regression: lib-test#src:test/lib_dns_spoof.pas at 021cd94f10a9 in step 1/2, `stable_linux_amd64/default/pinned -Fulib/rtl/platform/posix test/lib_dns_spoof.pas /tmp/lib_dns_spoof` (auto-filed by twatch)
- 2026-09-01 — regression: lib-test#src:tools/crtl_reachability.py at 5d983997a05a in step 18/72, `python3 tools/crtl_reachability.py` (auto-filed by twatch)
- 2026-09-01 — regression: test-xtensa#src:test/test_signal_default_revert_b336.pas at 370170edaffe in step 1/2, `./compiler/pascal26 --target=xtensa --platform=posix --x` (auto-filed by twatch)
- 2026-09-01 — bug-a-x86-64-inline-setlength-never-retains-promo-or-variant-elements
- 2026-09-01 — regression: test-core#src:test/test_promoint_array_cleanup.pas at 145e7a11dfed in step 2/3, `tools/expect_same.sh test_promoac26 "$(/tmp/test_promoac` (auto-filed by twatch)
- 2026-08-31 — Repro
- 2026-08-31 — `IROpName` names 68 of 75 IR ops, so a missing backend arm for the other seven reports `unknown`
- 2026-08-31 — The in-place string append is x86-64 only, so every other backend is quadratic
- 2026-08-31 — `PXXHighBits` recomputes a compile-time constant in a loop
- 2026-08-31 — bug-a-aarch64-has-no-stack-argument-passing-for-five-of-six-call-kinds
- 2026-08-31 — NilPy object reclamation — dict/list/instance/bound-method lifetime
- 2026-08-31 — regression: test-pascal-conformance#shard5/6 red at 27424c927b65 (auto-filed by twatch)
- 2026-08-31 — The shape
- 2026-08-31 — A mode-Delphi generic argument must be declared before the template
- 2026-08-31 — The xtensa WINDOWED ABI bus-errors on frozen strings, Copy, and dynarray SetLength
- 2026-08-31 — regression: test-asm#src:test/hello.pas red at 44ec32358394 (auto-filed by twatch)
- 2026-08-31 — NilPy's `random` is never seeded, and its first draw is the low bound
- 2026-08-31 — regression: test-asm#src:compiler/compiler.pas red at 5944ee686c10 (auto-filed by twatch)
- 2026-08-31 — regression: test-core#src:test/c_abi_pure_c_control.c at 0fd9454b879d in step 2/2, `tools/expect_same.sh c_abi_pure_c_control26 "$(/tmp/c_ab` (auto-filed by twatch)
- 2026-08-31 — P: a generic type parameter is unresolved inside a `class abstract` template
- 2026-08-31 — `defs.inc`'s VT_PROMO comment describes the SLOT, not the VARIANT
- 2026-08-31 — `record helper for T` / `type helper for T` — type helpers
- 2026-08-31 — Port IR_ALLOCA to i386, arm32 and riscv32
- 2026-08-31 — A `parallel for` body shares ONE captured string across every worker
- 2026-08-31 — argv → frozen string: four targets never checked, and the clamp is per-path
- 2026-08-31 — regression: test-core#src:test/test_sizeof.pas red at 35dbb5a998e7 (auto-filed by twatch)
- 2026-08-31 — The sqlite-thread runner is the only qemu runner with no load factor
- 2026-08-31 — Promote the constant-divisor strength reduction from `-O3` to `-O2`
- 2026-08-31 — An xtensa forward jump over 128 KiB still cannot be built
- 2026-08-31 — A C function's calling convention depends on which target it is built for
- 2026-08-31 — `fpSend` to a closed peer kills the process — `MSG_NOSIGNAL` is defined and never passed
- 2026-08-31 — regression: test-core#src:test/test_c_abi_pascal_caller.pas at 0fd9454b879d in step 2/2, `tools/expect_same.sh test_c_abi_pascal_caller26 "$(/tmp/` (auto-filed by twatch)
- 2026-08-31 — A string release has two implementations, and they already disagree
- 2026-08-31 — first-ever red: test-core#src:test/test_setlen_in_parallel_for_body.pas at d28b77ce5d88 in step 2/2, `tools/expect_same.sh test_setlen_parfor26 "$(/tmp/test_s` (auto-filed by twatch)
- 2026-08-31 — One undecoded byte fails both `test-asm` disassembly jobs
- 2026-08-31 — regression: test-core#src:test/test_c_abi_intra_c_calls.pas at 0fd9454b879d in step 2/2, `tools/expect_same.sh test_c_abi_intra26 "$(/tmp/test_c_a` (auto-filed by twatch)
- 2026-08-31 — --threadsafe leaks every managed class field on x86-64, and "benign" was never measured
- 2026-08-31 — i386 clobbers EBX across a cdecl-exported function
- 2026-08-31 — A member on an array element read the element's own bytes
- 2026-08-31 — `ManagedLocalZeroBytes` answers per kind, and has been wrong twice the same way
- 2026-08-31 — A nested routine cannot capture a fixed-size array
- 2026-08-31 — `SizeOf(Extended)` disagrees with the storage `Extended` gets
- 2026-08-31 — A forward xtensa call over 512 KiB still cannot be built
- 2026-08-31 — "threadsafe is x86-64-only" is asserted in five places, and has been false since July
- 2026-08-31 — An xtensa frame larger than 32 KB needs more than one ADDMI
- 2026-08-31 — The I/O lock does a syscall per I/O statement
- 2026-08-31 — There is no general x86-64 relocatable object writer, and that is the gap
- 2026-08-31 — The compiler runs at ~12,000 lines/sec — find out why
- 2026-08-31 — ArgStr reads past argv into the environment on riscv32 and xtensa
- 2026-08-31 — String literals still allocate at 11,329 sites despite the static-handle pass
- 2026-08-31 — Nested routines: capture of fixed-size array locals not supported
- 2026-08-31 — RESOLVED 2026-08-31 — frank-rust
- 2026-08-31 — P: generic constraints are checked before the type section closes
- 2026-08-31 — The exception shadow chain is process-wide, so two threads crash
- 2026-08-31 — Signal handlers, phase 2: SA_SIGINFO + ucontext, threadsafe masks, sigaltstack, FPC-compat surface
- 2026-08-31 — alloca inside a call sequence corrupts the restored stack pointer
- 2026-08-31 — No cross target can build the compiler itself
- 2026-08-31 — Repro
- 2026-08-31 — `p^[i]` over a pointer to a dynamic array indexes with a 4-byte stride
- 2026-08-31 — The parked signal slots are process-wide and race across threads
- 2026-08-31 — arm32 cdecl refuses any argument block over 4 core registers — so arm32 only HALF-joins the cdecl campaign
- 2026-08-31 — regression CASCADE: 30 jobs newly red in bebac3336..afc0da53c (1 commits) — auto-filed by twatch
- 2026-08-31 — regression: test-core#src:test/test_nilpy_html_tempfile.npy red at ef59aaf72b5d (auto-filed by twatch)
- 2026-08-31 — `IR_RTTI_REG` and `IR_RESOURCES` have no riscv32 arm — anything that USES typinfo fails to compile
- 2026-08-31 — Object output for i386, arm32 and aarch64
- 2026-08-31 — A nested class's method, called from inside its GENERIC outer, is unresolved
- 2026-08-31 — A shared AnsiString handle in a `parallel for` is 11x slower than serial
- 2026-08-31 — The site
- 2026-08-31 — The NilPy arms in the shared call-argument loop are dead, and guarded by the wrong flag
- 2026-08-31 — Taking the address of a float array element is a float operator on the 32-bit targets
- 2026-08-31 — Hosted xtensa diverges from the x86-64 oracle on 21 of 142 cross programs
- 2026-08-31 — regression: test-pascal-conformance#shard4/6 red at 27424c927b65 (auto-filed by twatch)
- 2026-08-31 — `SizeOf(string)` disagrees with the storage a `string` actually gets
- 2026-08-31 — What this ticket is NOT
- 2026-08-31 — `of object` derailed the mode-Delphi generic alias anchor
- 2026-08-31 — busybox `cat` via cfront — one applet, real syscall load
- 2026-08-30 — `__has_include(MACRO)` answers 0 where gcc answers 1
- 2026-08-30 — `p^[i]` over a pointer to a fixed array is wrong for several element kinds
- 2026-08-30 — A `long long` bitfield after a smaller-typed one puts later members at the wrong offset
- 2026-08-30 — A real UnicodeString / WideChar model (UTF-16), or an honest refusal
- 2026-08-30 — Sweep the unwired tests into the suite
- 2026-08-30 — An `external` routine's pointer-param pointee is never recorded, so a class argument is accepted
- 2026-08-30 — A `Pointer` type alias rejects a class instance that plain `Pointer` accepts
- 2026-08-30 — The `f` suffix on a float literal is ignored
- 2026-08-30 — regression: test-core#src:test/cstatic_same_module_dup.c red at 7227f3e0f1f8 (auto-filed by twatch)
- 2026-08-30 — advisory: size-canary#src:tools/size_canary.py red at 83fb0ef72419 (auto-filed by twatch)
- 2026-08-30 — One array-shape reader, instead of four ident/field pairs
- 2026-08-30 — Which test expectations were captured from output rather than derived?
- 2026-08-30 — regression: test-core#src:test/test_val_radix_and_optional_code.pas red at 6d68643f9799 (auto-filed by twatch)
- 2026-08-30 — regression: test-asm#src:test/test_x64enc.pas red at 31198d3674df (auto-filed by twatch)
- 2026-08-30 — `--emit-obj` ignores `external name 'sym'` and emits the Pascal identifier as the undefined symbol
- 2026-08-30 — `float + float` is computed at double width
- 2026-08-30 — regression: test-core#src:test/test_c_gtk_types.pas red at bfec13534396 (auto-filed by twatch)
- 2026-08-30 — `builtin.pas` does not compile on bare ESP: a one-sided `{$ifndef PXX_ESP}`
- 2026-08-30 — regression CASCADE: 14 jobs newly red in 7acd2315e..d9f02bdc6 (3 commits) — auto-filed by twatch
- 2026-08-30 — `MAX_TEMPLATE_PARAMS = 4`, but real generic code declares six
- 2026-08-30 — `IEnumerable<T>` / `IEnumerator<T>` are missing from the RTL
- 2026-08-30 — The shared cdecl spill arm cannot yet do the job it would be given
- 2026-08-30 — A rel8 jump patch truncates silently when its span grows
- 2026-08-30 — `codecs` strict decode does not raise on invalid UTF-8, and `ignore` is ignored
- 2026-08-30 — Wire the nine that pass, then gate the checker
- 2026-08-30 — wasm32: the sys intrinsics and `IR_SYSCALL`, the last 36 bodies
- 2026-08-30 — regression: test-core#src:test/test_nil_argument_positions.pas red at dc798834ba33 (auto-filed by twatch)
- 2026-08-30 — DNS on ESP — bind lwIP's getaddrinfo, do NOT build a separate backend
- 2026-08-30 — regression: test-threads#src:test/test_cmp_both_in_place.pas@2 red at 0aa01425dbdc (auto-filed by twatch)
- 2026-08-30 — Grant: the xtensa refusal site in `pyparser.inc`, to frankS, bounded
- 2026-08-30 — `gui_shot.sh`'s blank-frame detector no longer detects a blank frame
- 2026-08-30 — tkinter facade: `grid(padx=(8, 6))` — the two-tuple pad
- 2026-08-30 — regression: test-core#src:test/test_c_gtk_call.pas red at bfec13534396 (auto-filed by twatch)
- 2026-08-30 — The seed canary skips a break that is already on master
- 2026-08-30 — P: generic type constraints are parsed and discarded — nothing is ever checked
- 2026-08-30 — A specialized body reports its errors in the wrong file (and the wrong line)
- 2026-08-30 — Audit public copy for the two different "byte-identical" claims
- 2026-08-30 — regression: test-pascal-conformance#shard4/6 red at f6303d410d78 (auto-filed by twatch)
- 2026-08-30 — regression: test-core#src:test/test_rtl_fpc_compat_helpers.pas red at 6d68643f9799 (auto-filed by twatch)
- 2026-08-30 — Xtensa's scope-exit release handles ONE of seven managed kinds; every other backend handles all seven
- 2026-08-30 — `__has_include` unsupported, so pdfgen selects big endian on x86-64
- 2026-08-30 — RULING: reversing the xtensa signal-runtime exclusion is DERIVABLE, not a Track U fork
- 2026-08-30 — A wrapped resolve citation is invisible to BOTH check and fill
- 2026-08-30 — regression: test-nilpy#src:test/test_nilpy_max_min_iterables.npy red at 0200df7eabcd (auto-filed by twatch)
- 2026-08-30 — A job that has never passed on this box can never earn a bigger budget
- 2026-08-30 — regression: test-fgl#src:compiler/.pascal26.fixedpoint red at 719bef10ea68 (auto-filed by twatch)
- 2026-08-30 — ImageReader.getSize returns a string where reportlab returns a pair
- 2026-08-30 — A loop in dead code keeps itself alive through its own back edge
- 2026-08-30 — GRANT: `tools/progress.py` → pxx-a5, scoped to the `UNCITED-RESOLVE` check
- 2026-08-30 — A csmith program hangs under pxx at every `-O` level, and runs under gcc
- 2026-08-30 — riscv32 cannot reach a far call, so the compiler will not link
- 2026-08-30 — regression: test-nilpy#src:test/test_nilpy_min_max_key_none.npy red at 0200df7eabcd (auto-filed by twatch)
- 2026-08-30 — A `(double)` cast of a `float` was a retag, not a conversion
- 2026-08-30 — regression: test-emit-obj#src:test/test_emit_obj.pas red at bfec13534396 (auto-filed by twatch)
- 2026-08-30 — A function definition after an unclosed struct is eaten as a member
- 2026-08-30 — The xtensa windowed ABI is compiled twice and executed never
- 2026-08-30 — An unterminated C declaration still parses the appended Pascal RTL
- 2026-08-30 — `-dPXX_ALLOC_CENSUS` — this runtime could not answer "how much does it allocate"
- 2026-08-30 — The hardcoded-/tmp guard recommends a variable testmgr strips
- 2026-08-30 — -O3: fuse `mov rax, rN` + `cdqe` into a single `movsxd rax, rNd`
- 2026-08-30 — LoadFile's runtime syscall wrappers have no riscv32 or xtensa arm
- 2026-08-30 — regression: test-pascal-conformance#shard0/6 red at f6303d410d78 (auto-filed by twatch)
- 2026-08-30 — A nested type of the enclosing template is minted as a concrete generic argument
- 2026-08-30 — `--emit-obj` on x86-64 emits an object that exports nothing
- 2026-08-30 — A struct field's partial index uses the outer row stride, and stamps no stride at all
- 2026-08-30 — `CModuleOfTok` never resets when an include returns to its parent
- 2026-08-30 — regression: test-core#src:test/test_c_gtk_window.pas red at bfec13534396 (auto-filed by twatch)
- 2026-08-30 — GRANT: `compiler/pasparser_lval.inc` → the wasm lane, for the NilPy str/helper collision
- 2026-08-30 — Trim the now-false cross-reference in `PXXSysLseek`'s rv32 comment
- 2026-08-30 — regression: test-c-conformance-aarch64#shard0/6 red at b695bcb4b192 (auto-filed by twatch)
- 2026-08-30 — -O3: the W1 operand folds are x86-64-only — aarch64 has 4 gate sites to x86-64's 15
- 2026-08-30 — Bodied Pascal `cdecl` procs: genuine SysV prologue (float params, >6 args)
- 2026-08-30 — A by-ref float param on a cdecl call is classified SSE, and the program segfaults
- 2026-08-30 — A class with two definitions of one method hangs the compiler forever
- 2026-08-30 — A cross-unit specialization streams method bodies into the interface section
- 2026-08-30 — The CLI reference documented `--selftest`, which the compiler rejects
- 2026-08-30 — The six the blanket was hiding
- 2026-08-30 — regression: test-lua-cross#src:compiler/.pascal26.fixedpoint red at b695bcb4b192 (auto-filed by twatch)
- 2026-08-30 — regression: test-pascal-conformance#shard1/6 red at f6303d410d78 (auto-filed by twatch)
- 2026-08-30 — A perf commit silently fixed 41 xtensa/windowed divergences
- 2026-08-30 — Push contention is a property of this fleet now, not an anomaly
- 2026-08-30 — regression: test-core#src:test/test_c_gtk3_stock.pas red at bfec13534396 (auto-filed by twatch)
- 2026-08-30 — xtensa cannot build a program over ~512 KiB of code
- 2026-08-30 — A parameter's pointer element type is lost between registration and overload matching
- 2026-08-30 — C string-literal decay belongs at the producer
- 2026-08-30 — -O3 (aarch64): fold a resident compare LEFT across a complex right, and drop the staging entirely
- 2026-08-30 — A later wall at key_analysis.py:82 blocks convertrawtext.py and SongFormatter.py
- 2026-08-30 — B: the RTL provides no `TArray<T>`, while pxx claims to be VER3_2_2
- 2026-08-30 — regression: test-c-conformance-aarch64#shard2/6 red at b695bcb4b192 (auto-filed by twatch)
- 2026-08-30 — regression: test-core#src:test/test_mgmt_operators.pas red at 47277dd0e52b (auto-filed by twatch)
- 2026-08-30 — `-O3` alone computes a different result for a nested `case` statement
- 2026-08-30 — A `property` inside an `interface` declaration is rejected
- 2026-08-30 — regression: test-c-conformance-aarch64#shard5/6 red at b695bcb4b192 (auto-filed by twatch)
- 2026-08-30 — RTL-over-libc — the portability force multiplier
- 2026-08-30 — An array constructor in argument position leaks its dynamic array
- 2026-08-30 — regression: test-asm#src:test/test_asm_emit_rv32.pas red at 108ac182bed6 (auto-filed by twatch)
- 2026-08-30 — Xtensa implements 31 IR ops; riscv32 implements 45 and aarch64 53
- 2026-08-30 — regression CASCADE: 24 jobs newly red in fc9e258e1..d24df3f09 (22 commits) — auto-filed by twatch
- 2026-08-30 — The comment that caused three bugs survived all three fixes
- 2026-08-30 — regression: test-asm#src:compiler/compiler.pas red at 97c5fba007f9 (auto-filed by twatch)
- 2026-08-30 — The HW-entropy intrinsics are unreachable on every ESP target
- 2026-08-30 — The range-checked FPC seed cannot be built
- 2026-08-30 — TypeRef: migrate consumers lane by lane
- 2026-08-30 — `codecs.encode` segfaults for every encoding except utf-8
- 2026-08-30 — `iter(xs)` is undefined — the explicit iterator protocol
- 2026-08-30 — `-g` with `-O2` or `-O3` overflows the DWARF buffer on `compiler.pas`
- 2026-08-30 — Public, live status report on the website
- 2026-08-30 — regression: lib-test#src:tools/crtl_reachability.py red at 7227f3e0f1f8 (auto-filed by twatch)
- 2026-08-30 — `<sys/param.h>` recurses to the include cap when resolved from the host fallback
- 2026-08-30 — `xs.sort(key=..., reverse=...)` — only the free function `sorted()` supports key/reverse
- 2026-08-30 — Give data its own PT_LOAD (R+W, no X) instead of one RWX segment
- 2026-08-30 — The grant
- 2026-08-30 — regression: test-pascal-conformance#shard3/6 red at f6303d410d78 (auto-filed by twatch)
- 2026-08-30 — regression: `^specialize T<Args>` in a TYPED CONST no longer parses (tgeneric87)
- 2026-08-30 — regression: test-nilpy#src:test/test_nilpy_startswith_tuple.npy red at b898d0543fc8 (auto-filed by twatch)
- 2026-08-30 — An unclosed initializer list reports the next error instead of itself
- 2026-08-30 — regression: test-core#src:test/test_nilpy_zero_argument_builtin_constructors.npy red at dc798834ba33 (auto-filed by twatch)
- 2026-08-30 — regression: test-nilpy#src:test/test_nilpy_min_max_key_none.npy red at 9fa9e145ea79 (auto-filed by twatch)
- 2026-08-30 — Hosted xtensa segfaults on string concatenation, and bus-errors in Copy
- 2026-08-30 — The grant
- 2026-08-30 — GRANT: `ir_codegen_riscv32.inc` → frankS (Track S), scoped to the `SPECIAL_IN` arm
- 2026-08-30 — Pascal corpus rung 2 — fgl (real FPC generic containers)
- 2026-08-30 — riscv32's PC-relative encoders silently truncate; xtensa already guards
- 2026-08-30 — A real `minidom` is an implementation, not a shim
- 2026-08-30 — Xtensa's last five non-compiling builtins — four are ports, one needs the entry stub
- 2026-08-30 — regression: a LITERAL str receiver with `key=` reaches no keyed overload
- 2026-08-30 — Two different nested specializations of ONE template, in one generic, collide
- 2026-08-30 — regression: test-asm#src:test/test_asm_emit_x64.pas red at 94492d162332 (auto-filed by twatch)
- 2026-08-30 — regression: test-core#src:test/test_nilpy_pathlib.npy red at dc798834ba33 (auto-filed by twatch)
- 2026-08-30 — riscv32 passes stack arguments in REVERSE psABI order, so pxx↔C interop is wrong at ten or more words
- 2026-08-30 — A parenless method reference handles two of four receiver spellings
- 2026-08-30 — A constant `if` condition keeps its dead arm, and the binary will not start
- 2026-08-30 — regression: test-nilpy#src:test/test_nilpy_min_max_key_in_a_variable.npy red at c4fba16e4675 (auto-filed by twatch)
- 2026-08-30 — The address of a virtual class method cannot be lowered (`AN_CLASS_VIRTUAL_CALL`, kind 88)
- 2026-08-30 — What now works, so the boundary is exact
- 2026-08-30 — regression: test-c-conformance-aarch64#shard1/6 red at b695bcb4b192 (auto-filed by twatch)
- 2026-08-30 — regression: test-nilpy#src:test/test_nilpy_max_min_iterables.npy red at d8fae80063b0 (auto-filed by twatch)
- 2026-08-30 — GRANT: the xtensa arm of `EmitManagedLocalCleanupForTarget` → Track S
- 2026-08-30 — Four ancestor-chain walks in `symtab.inc` have no cycle guard
- 2026-08-30 — A record field `array[..] of string[N]` drops N and overruns into the next field
- 2026-08-30 — `sizeof(*p)` on a pointer-to-array answers the element size
- 2026-08-30 — `Length` of a dynamic `array of Char` returns 1
- 2026-08-30 — regression: test-core#src:test/test_nilpy_str_ascii_cache.npy red at dc798834ba33 (auto-filed by twatch)
- 2026-08-30 — The -O3 residency exception "gate that stands today" is only a debug print
- 2026-08-30 — regression: test-nilpy#src:test/test_nilpy_min_max_key_in_a_variable.npy red at 0200df7eabcd (auto-filed by twatch)
- 2026-08-30 — What runs, so the boundary is clear
- 2026-08-30 — A red compile job's reason held six lines and none of them was the error
- 2026-08-30 — P: a nested class naming its enclosing template is substituted twice
- 2026-08-30 — There are now TWO SysV prologue emitters; collapse `cparser.inc`'s into the shared arm
- 2026-08-30 — regression: test-core#src:test/test_object_reference.pas red at f9bfcca97409 (auto-filed by twatch)
- 2026-08-30 — `ParamStr(i)` as an EXPRESSION smashes the stack when the argument is longer than 256 bytes (x86-64)
- 2026-08-30 — C imports a Pascal unit under a mangled name
- 2026-08-30 — A string function result in a COMPARISON leaks on x86-64
- 2026-08-30 — The two
- 2026-08-30 — platform_backend's rv32 block says qemu tolerates plain lseek; strace says no
- 2026-08-30 — -O3 (x86-64): W1 slice 10 fused the sign-extend and skipped the zero-extend
- 2026-08-30 — IRArrayElemStride has no AN_FIELD arm, so a field base gets the ROW stride
- 2026-08-30 — Indexing a function result that is an array of managed strings yields garbage
- 2026-08-30 — -O3: evaluate a non-commutative binop's operands right-first when the right is pure
- 2026-08-30 — sizeof of a partial index answers the element, not the row
- 2026-08-30 — A directly-invocable C corpus probe that is not a `make test-*` target
- 2026-08-30 — regression: test-core#src:test/test_nilpy_infer_return.npy red at dc798834ba33 (auto-filed by twatch)
- 2026-08-30 — regression: test-core#src:test/test_generic_arg_is_enclosing_template_param_objfpc.pas red at 1d8b44e59042 (auto-filed by twatch)
- 2026-08-30 — `-O3` now has differential coverage, and it should be standing
- 2026-08-30 — Auto-close on one green is sound for a deterministic test and unsound for a racy one
- 2026-08-30 — A failed `Expect` prints a raw dump: no `error:` prefix, no source path, a token ordinal
- 2026-08-30 — The range-checked seed traps on deliberate wraparound arithmetic
- 2026-08-30 — regression: test-core#src:test/test_pointer_to_a_named_fixed_array.pas red at ff07990984a0 (auto-filed by twatch)
- 2026-08-30 — `@BodiedProc` passed as an ARGUMENT escapes the cdecl soundness reject and silently miscompiles
- 2026-08-30 — regression: test-asm#src:test/hello.pas red at 97c5fba007f9 (auto-filed by twatch)
- 2026-08-30 — A comment asserting an invariant is a claim about a SIBLING ARM, and nobody checks it
- 2026-08-30 — regression: test-asm#src:test/test_asmcore_x64.pas red at 97c5fba007f9 (auto-filed by twatch)
- 2026-08-30 — Reading an AnsiString out of a record field or array element is broken on xtensa
- 2026-08-30 — A qualified type name cannot be a generic argument
- 2026-08-30 — A hermetic TLS loopback for the SSL suite
- 2026-08-30 — An `#include` nested deeper than 16 is silently dropped
- 2026-08-30 — Sweep for differential rows that assert stdout when the subject is an exit code
- 2026-08-30 — regression: test-pascal-conformance#shard2/6 red at f6303d410d78 (auto-filed by twatch)
- 2026-08-30 — regression: test-threads#src:test/test_static_string_literals.pas@2 red at 5bb3e120d3f7 (auto-filed by twatch)
- 2026-08-30 — GRANT: `devdocs/dev/*.md` → frankD, audit-only, time-boxed
- 2026-08-30 — A by-value wide record on xtensa renders a live address
- 2026-08-30 — A wide string's element is typed `tyChar`, so only the `Ord` read of it is correct
- 2026-08-30 — The C-ABI gate moved the callee but not the intra-C call sites
- 2026-08-30 — advisory: fpc-bootstrap#src:compiler/compiler.pas red at 6a19b5333e07 (auto-filed by twatch)
- 2026-08-30 — A pin that adds a builtin unit cannot commit it with `git add -u`
- 2026-08-30 — `Write` of any real SIGBUSes on xtensa — while `Str` of the same value is correct
- 2026-08-30 — Three hardcoded /tmp paths in the new crtl tempfile test
- 2026-08-30 — The cdecl soundness reject still has its argument-shaped door on i386/arm32/aarch64/riscv32
- 2026-08-30 — An unused `^TRec` alias changes an unrelated dereference
- 2026-08-30 — A missing Pascal unit, imported from C, is diagnosed at the wrong line in the wrong language
- 2026-08-30 — Audit: could the silent `PChar`-alias arm have frozen a wrong test expectation?
- 2026-08-30 — The suffix walk has six copies, and the reader is always the broken half
- 2026-08-30 — A method's keyword call drops a tuple argument when an earlier default is skipped
- 2026-08-30 — 20 new cross-target rows compare stdout without the exit code
- 2026-08-30 — `EmitAsmX64` re-parses the same hardcoded assembly strings on every compile — ~12% of a NilPy compile
- 2026-08-30 — `drawImage` discards pdfgen's error and writes a PDF with no image
- 2026-08-30 — Random library — HW/OS/software tiered RNG (cross-target capability test)
- 2026-08-30 — An unterminated C construct parses into the Pascal builtins
- 2026-08-30 — regression: test-core#src:test/test_c_gtk.pas red at bfec13534396 (auto-filed by twatch)
- 2026-08-30 — regression: test-core#src:test/test_warn_ignored_directives.pas red at 83fb0ef72419 (auto-filed by twatch)
- 2026-08-30 — A string assigned to a record ARRAY ELEMENT is not type-checked
- 2026-08-30 — An alias to a named array type resolves to the ELEMENT type
- 2026-08-30 — A `const` array whose ELEMENTS are sets is rejected
- 2026-08-30 — Managed temps for an untaken branch are still init'd and finalized
- 2026-08-30 — `string.Template` — the `$`-placeholder class
- 2026-08-30 — regression CASCADE: 12 jobs newly red at 4e27dc2be114 (auto-filed by twatch)
- 2026-08-30 — `-O3` drops the first of two chained qword `* 31 xor` statements
- 2026-08-30 — regression: test-core#src:test/test_opt_store_reload.pas red at c951ec710b33 (auto-filed by twatch)
- 2026-08-30 — regression: test-core#src:tools/expect_same.sh@276 red at 9ced9bbc3e2d (auto-filed by twatch)
- 2026-08-30 — `CPrepInclude0..15` should be an array
- 2026-08-30 — GRANT: `compiler/builtin/builtinheap.pas` → frankS, bounded to three `PXXSys*` wrappers
- 2026-08-30 — `make pin` overwrote the running `pinned` binary in place
- 2026-08-30 — The partial-index sentinel should not be a type tag
- 2026-08-30 — 89 nilpy expectations are duplicated across two targets, with nothing keeping them in sync
- 2026-08-30 — Sweep the `mimic_` shims against CPython
- 2026-08-30 — regression: test-core#src:test/c_crtl_tempfile_and_unlocked.c red at 7227f3e0f1f8 (auto-filed by twatch)
- 2026-08-30 — The Delphi generic rewrite rewrites a shadowing DECLARATION as a use
- 2026-08-30 — `Halt(n)` exits ZERO on hosted xtensa — and the differential row that covers it was green
- 2026-08-30 — aarch64: an aggregate result with more than 8 params is unsupported, and it takes two corpus programs with it
- 2026-08-30 — xtensa has no ordered string compare: `a < b` sorts by heap handle
- 2026-08-30 — A C program's own functions took the C-ABI call path on aarch64 and arm32
- 2026-08-30 — A helper's comment is a claim about every caller, written where one caller cannot see it
- 2026-08-30 — regression: test-core#src:test/test_str_of_unsigned.pas red at 6d68643f9799 (auto-filed by twatch)
- 2026-08-30 — regression: lib-test#src:tools/crtl_reachability.py red at b26e7ed366f3 (auto-filed by twatch)
- 2026-08-30 — A hidden aggregate-result temp gets a frame slot with NO alignment, and the prologue word-stores into it
- 2026-08-30 — The xtensa row of the POSIX syscall table
- 2026-08-30 — `TESTTMP` defaults to a path every checkout shares
- 2026-08-30 — A shortstring write on xtensa corrupts a NEIGHBOURING variable
- 2026-08-30 — A `Double` typed const misaligns the next typed-const array
- 2026-08-30 — A bootable image: busybox + the self-hosting compiler, under qemu-system
- 2026-08-30 — A multi-dim array FIELD decays with the element stride
- 2026-08-30 — A hosted xtensa profile, so qemu-xtensa can be an oracle
- 2026-08-30 — regression: test-core#src:test/test_methodptr_nil_assign.pas red at dc798834ba33 (auto-filed by twatch)
- 2026-08-30 — The constraint check rejects a class declared in the same type section
- 2026-08-30 — ESP32 peripheral callback API (timer / GPIO / ADC) — the user-facing "interrupt"
- 2026-08-30 — A hot write to a data page that shares with code costs 1600x under qemu
- 2026-08-30 — The rtl-generics corpus stops on `TKey` ~~inside a `TList<T>` body~~
- 2026-08-30 — regression: test-asm#src:test/test_asm_emit_x64.pas red at 31198d3674df (auto-filed by twatch)
- 2026-08-30 — SPECIAL_IN has no arm in the two 32-bit cross backends
- 2026-08-30 — P: `object` gets its standard meaning; the rooted reference is retired
- 2026-08-30 — regression: test-pascal-conformance#shard5/6 red at f6303d410d78 (auto-filed by twatch)
- 2026-08-30 — The ASCII-cache consumer still says byte mutation has "one place"
- 2026-08-30 — Seven of eight "waiting on an open bug" workarounds are waiting on nothing
- 2026-08-29 — Real dynamic-library loader (`dlopen`) — PAL primitives + libc policy
- 2026-08-29 — A `for` limit that reads the control variable sees the wrong value
- 2026-08-29 — Document the toolchain information flags (--help / --version / --where / --config / --list-targets / --list-libraries / --doctor, PXX_HOME, PXX_LIBPATH, pxx.cfg)
- 2026-08-29 — The measurement
- 2026-08-29 — xtensa codegen has no Variant support
- 2026-08-29 — regression: test-core#src:test/test_nilpy_str_ascii_cache.npy red at a6698ac28e8b (auto-filed by twatch)
- 2026-08-29 — advisory: demos#00 red at b26e7ed366f3 (auto-filed by twatch)
- 2026-08-29 — regression: test-threads#src:test/test_sched_reactor_exhaustion.pas red at c687ffeecb1f (auto-filed by twatch)
- 2026-08-29 — A Delphi-mode generic from a used unit cannot be specialized
- 2026-08-29 — A generic argument that is another template's parameter is minted as a concrete type
- 2026-08-29 — Measured stdlib coverage: json and re are solid; os, time and math.fabs are absent
- 2026-08-29 — `expect_same.sh` — the helper half of the silent-assertion bug
- 2026-08-29 — regression: test-nilpy#src:test/test_nilpy_parent_call_after_instantiation.npy red at b898d0543fc8 (auto-filed by twatch)
- 2026-08-29 — A pin verify's reds carry no reasons
- 2026-08-29 — A reopened fuzz finding erases the history that makes it useful
- 2026-08-29 — Why this is a real ticket and not bookkeeping
- 2026-08-29 — A deep unit dependency parses with a spliced token stream
- 2026-08-29 — Document `--warn-ignored-directives`
- 2026-08-29 — A guard that has never once been true, in three frontends' worth of candidates
- 2026-08-29 — A duplicate forward in `rparser.inc` breaks the FPC seed build
- 2026-08-29 — feature(P): Delphi's TStringHelper surface — `s.Length`, `s.ToUpper`, `s.Trim`, `s.Substring`
- 2026-08-29 — regression: test-core#src:test/test_nilpy_str_ascii_cache.npy red at c513c0190421 (auto-filed by twatch)
- 2026-08-29 — A forward declaration does not bind a differently-cased body
- 2026-08-29 — regression: test-threads#src:test/test_sched_reactor_exhaustion.pas red at 2b33ab009963 (auto-filed by twatch)
- 2026-08-29 — A class-method call keeps the receiver's class instead of its return type
- 2026-08-29 — xtensa refuses to lower a syscall that cannot be reached on xtensa
- 2026-08-29 — A C include path captures a Pascal `uses`, and the result is a binary that cannot load
- 2026-08-29 — regression: test-threads#src:test/test_sched_reactor_exhaustion.pas red at dd9450b0ce75 (auto-filed by twatch)
- 2026-08-29 — A cast through an ordinal type ALIAS does not truncate
- 2026-08-29 — PCL should assert its GTK version rather than rely on an accident
- 2026-08-29 — regression: lib-test#src:test/lib_synapse.pas red at ee62e6dc0582 (auto-filed by twatch)
- 2026-08-29 — regression: lib-test#src:test/lib_synapse.pas red at c52fc389fd97 (auto-filed by twatch)
- 2026-08-29 — regression: test-nilpy#src:test/test_nilpy_relative_import_in_package.npy red at ee62e6dc0582 (auto-filed by twatch)
- 2026-08-29 — regression: test-nilpy#src:test/test_nilpy_relative_import_in_package.npy red at edfcdcaf3a5c (auto-filed by twatch)
- 2026-08-29 — regression: `--target=xtensa` on a C source selects the POSIX platform backend
- 2026-08-29 — RExprRecId breaks the FPC bootstrap seed
- 2026-08-29 — The name-resolution docs state the NilPy import rule with no cpyext carve-out
- 2026-08-29 — Fail when a test file is wired into no build rule
- 2026-08-29 — Document `{$NILCHECKS}` and `--no-nil-check`
- 2026-08-29 — `f(&arr)` — borrowing a whole array as a `&[T]` argument — compiles and segfaults
- 2026-08-29 — The breadth banner vouches on a run that covers nothing
- 2026-08-29 — `rparser.inc` calls `RExprRecId` before declaring it — the FPC bootstrap seed does not compile
- 2026-08-29 — `EmitLoadVarA64` needs a destination-register parameter
- 2026-08-29 — Public docs: `exec`/`eval` exist, and `__builtins__` is a decided incompatibility
- 2026-08-29 — regression: test-threads#src:test/test_sched_reactor_exhaustion.pas red at a6698ac28e8b (auto-filed by twatch)
- 2026-08-29 — `lib-test ok (…)` names suites that were skipped
- 2026-08-29 — `""` and `None` are the same value for a NilPy str
- 2026-08-29 — The runtime's bulk copy is one byte per iteration
- 2026-08-29 — Document `--strict-overload-width`
- 2026-08-29 — A cascade ticket concludes "harness event" with no evidence for it
- 2026-08-29 — regression: test-threads#src:test/test_sched_reactor_exhaustion.pas red at 7d3382f03453 (auto-filed by twatch)
- 2026-08-29 — regression: test-core#src:test/test_nilpy_fallback_import_try_wins.npy red at 3ad067ed395d (auto-filed by twatch)
- 2026-08-29 — regression: tools-devtest#00 red at 8787cfe4235a — a new hardcoded /tmp path in a NilPy test
- 2026-08-29 — NilPy import order leaks a class name into a later-compiled RTL unit
- 2026-08-29 — `AllocArray` leaves `RecName` stale on a recycled symbol slot
- 2026-08-29 — `HeapMmap` has no wasm32 arm, so the heap starts at address zero
- 2026-08-29 — Document own-language-first in the public language reference
- 2026-08-29 — NodeMetaclassCi does not know a virtual class-method call
- 2026-08-29 — Symptom
- 2026-08-29 — `Halt` from several parallel-for workers at once can exit 0
- 2026-08-29 — `PXXSysWrite` has no wasm32 arm, so a wasm32 program is silent
- 2026-08-29 — The posix PAL dir is added on ESP-platform targets
- 2026-08-29 — A `range` bound that reads the loop variable never terminates
- 2026-08-29 — The only callers of `EvalPyStmts` encode a contract that changed under them
- 2026-08-29 — regression: lib-test#src:tools/crtl_reachability.py red at ee62e6dc0582 (auto-filed by twatch)
- 2026-08-29 — Migrate lib/pcl off the curated `gtk3_c.h`
- 2026-08-29 — bug-a-lowercase-resolves-to-two-different-routines-depending-on-the-seed
- 2026-08-29 — `--version` advertises seven frontends the docs never mention
- 2026-08-29 — An import alias binds to a same-named member of the SOURCE module
- 2026-08-29 — A type helper's `property` is not dispatched, only its methods are
- 2026-08-29 — The 17th thread silently aliases reactor slot 0
- 2026-08-29 — advisory: fpc-bootstrap#src:compiler/compiler.pas red at a6698ac28e8b (auto-filed by twatch)
- 2026-08-29 — The per-CPU `{$ifdef}` chains in `builtinheap.pas` fail open
- 2026-08-29 — regression: test-core#src:test/test_nilpy_min_max_variadic.npy red at 1d98cf21375f (auto-filed by twatch)
- 2026-08-29 — The IDE cannot jump into an include or a unit
- 2026-08-29 — Teach testmgr the `TESTTMP` value
- 2026-08-29 — `@staticmethod` and `@classmethod` are rejected
- 2026-08-29 — pasmith calls an FPC `-O2` bug a generator contract violation
- 2026-08-29 — A call chained onto a class-method result is silently dropped (class-NAME receiver)
- 2026-08-29 — regression: test-core#src:test/test_nilpy_fallback_import.npy red at 3ad067ed395d (auto-filed by twatch)
- 2026-08-29 — A directory reference is credited from any token that looks like one
- 2026-08-29 — `cross-bootstrap` for aarch64 overflows `MAX_CODE`
- 2026-08-29 — The status page understates the dialect, and covers three frontends of twelve
- 2026-08-29 — `%p` of a null pointer prints `0x0`, glibc prints `(nil)`
- 2026-08-28 — Networking runtime
- 2026-08-28 — A class instance converts implicitly to any typed pointer
- 2026-08-28 — The module-shim batch blocking the Python corpus
- 2026-08-28 — `lib_dns_libc`: one unreproduced gate failure, and a hermeticity claim that is not true
- 2026-08-28 — Wire random.pas's tier 1 to the hardware-entropy intrinsics
- 2026-08-28 — The `var*` VarType constants are missing, and the tags are ours
- 2026-08-28 — A skipped job is PASSLIKE, so it becomes a false "last good"
- 2026-08-28 — The premise as filed is false, and the measurement says so
- 2026-08-28 — A method cannot be NAMED `Default`
- 2026-08-28 — `typinfo` facade unit: FPC's RTTI API shapes over OUR blobs
- 2026-08-28 — Why this is being filed after the fact
- 2026-08-28 — Buffered Text I/O — today it is one syscall per byte
- 2026-08-28 — RTTI read of a getter-method property answers 0
- 2026-08-28 — What to build
- 2026-08-28 — What is being asked
- 2026-08-28 — A generic prerequisite is emitted before the referenced template exists
- 2026-08-28 — chore-t-nothing-re-checks-a-blocked-by-edge-after-its-blocker-closes
- 2026-08-28 — bug-wasm-compiling-compiler-pas-for-wasm32-needs-tens-of-gb
- 2026-08-28 — A METHOD called with missing arguments compiles and reads garbage (free routines are checked)
- 2026-08-28 — SysUtils gaps found by rtl-generics: `EArgumentOutOfRangeException`, `CreateRes`, `System.Error`
- 2026-08-28 — RESULT, 2026-08-28 — verified, no defect, and the REASON does not generalise
- 2026-08-28 — Method pointers: a class method never works, and an inline cast never works
- 2026-08-28 — A `resourcestring` is not addressable
- 2026-08-28 — `IOResult` returns a negative errno instead of an FPC code
- 2026-08-28 — Four standard Text-file routines are missing
- 2026-08-28 — A generic specialized before its declaration is unresolvable in DELPHI mode
- 2026-08-28 — The resolver sends `localhost` to the wire
- 2026-08-28 — B an FPC-compatible `Signal()` unit over SetSignalHandler
- 2026-08-28 — `VarIsStr` is False for a one-character string variant
- 2026-08-28 — A generic class's out-of-line method header binds to a same-named non-generic class
- 2026-08-28 — Mutually referencing generics are rejected as circular
- 2026-08-28 — Record HOW a regression closed, not just that it did
- 2026-08-28 — A fourth corpus — do the ladder's walls generalise, or are they one family's idioms?
- 2026-08-28 — A skip that cannot say why is a pass in the verdict
- 2026-08-28 — `TGeneric<T>.ClassMethod` is "undefined variable" inside another generic's body
- 2026-08-27 — A lambda returned directly is not callable
- 2026-08-27 — A module-level rebinding still loses to a `def` of the same name
- 2026-08-27 — The FPC low-level thread API needs a `uses` clause
- 2026-08-27 — regression: test-nilpy#src:test/test_nilpy_variant_operand_arith_dunders.npy red at 39d4afb022ce (auto-filed by twatch)
- 2026-08-27 — A short-circuit `or` returning `self` is typed as a number
- 2026-08-27 — Redefining a `def` rebinds the calls that came before it
- 2026-08-27 — A qualified module member is taken by a case-folded local class
- 2026-08-27 — riscv32 codegen has no Variant support
- 2026-08-27 — Inline `specialize F<T>(...)` for generic ROUTINES
- 2026-08-27 — Link previews to pxxc.org render as bare text — no `og:image`
- 2026-08-27 — Rebinding an int parameter twice across the float boundary is refused
- 2026-08-27 — A class named `Text` still segfaults outside the one arm that was fixed
- 2026-08-27 — A resolved module member used as a VALUE is "undefined variable"
- 2026-08-27 — An implicit-conversion operator is looked up on an exact type-kind match
- 2026-08-27 — A record typecast used as an assignment target cannot be indexed
- 2026-08-27 — `IntToStr` of a QWord above 2^63 renders it negative
- 2026-08-27 — A module member named like its module hides the module's other members
- 2026-08-27 — regression: test-core#src:test/test_nilpy_builtin_subclass_dunder_dispatch.npy red at c28e07a89f03 (auto-filed by twatch)
- 2026-08-27 — An attribute on an unresolved import degrades to a bare name
- 2026-08-27 — `class helper for` is not parsed
- 2026-08-27 — Where
- 2026-08-27 — FPC global (unit-scope) `operator` overload declarations
- 2026-08-27 — `self.__class__(...)` cannot be called as a constructor
- 2026-08-27 — A subscript store whose receiver is a call result does not parse
- 2026-08-27 — Importing both `f` and `F` from one module loses the class
- 2026-08-27 — The System math and thread surfaces are not ambient in units
- 2026-08-27 — The website still bills NilPy as experimental; the docs already say otherwise
- 2026-08-27 — A field's type is fixed by its first assignment and never widened
- 2026-08-27 — Numeric goto labels are not supported
- 2026-08-27 — `class helper for <class>` is not accepted
- 2026-08-27 — regression: test-nilpy#src:test/test_nilpy_star_unpack_into_a_collecting_callee.npy red at b4d62b3dcfde (auto-filed by twatch)
- 2026-08-27 — Calling-convention directives are accepted in some positions and rejected in others
- 2026-08-27 — A field assigned a module-level def has no inferable type
- 2026-08-27 — A frozen-string concat operand becomes pointer arithmetic
- 2026-08-27 — An arithmetic dunder on `self` is pointer arithmetic
- 2026-08-27 — `Length` of a bracket constructor answers the set bitmask
- 2026-08-27 — regression: test-core#src:test/test_nilpy_unbound_builtin_method.npy red at c28e07a89f03 (auto-filed by twatch)
- 2026-08-27 — A field takes its type from the FIRST TOKEN of a multi-token right-hand side
- 2026-08-27 — Complete the `builtin` unit on the ESP-class targets
- 2026-08-27 — Install ESP-IDF so the skipped ESP execution rows actually run
- 2026-08-27 — `Format('%u', ...)` is a synonym for `%d`
- 2026-08-27 — A dunder subscript through a dynamically-typed receiver is lost
- 2026-08-27 — A variant assigned to itself becomes Empty
- 2026-08-27 — Cannot call directly through a procedural-type cast
- 2026-08-27 — A static star operand over a non-list iterable passes nothing
- 2026-08-27 — The System bit-scan and radix-string surface is missing
- 2026-08-27 — The const evaluator cannot carry an unsigned 64-bit bound
- 2026-08-27 — A keyword call through a statically unknown callee does not compile
- 2026-08-27 — The zero-argument form of a builtin type constructor is rejected
- 2026-08-27 — xtensa cannot lower an Int64-to-float conversion
- 2026-08-27 — A function stored in a variable is not equal to the function
- 2026-08-27 — A field declared in an ancestor is not widened by a descendant's rebind
- 2026-08-27 — Why this exists as a ticket at all
- 2026-08-27 — The xtensa entry jump cannot reach a main body past 128 KiB
- 2026-08-27 — The old-style iteration protocol reaches only the `for` loop
- 2026-08-27 — Two generic templates cannot both declare a nested type of the same name
- 2026-08-27 — A field typed across a semicolon takes the NEXT statement's type
- 2026-08-27 — A nested def capturing a rebound parameter uses the parameter's type
- 2026-08-27 — regression: test-core#src:test/test_pascal_cast_chain_method_call.pas red at 97f96a5cc766 (auto-filed by twatch)
- 2026-08-27 — `isinstance` does not accept a qualified class name
- 2026-08-27 — `bytearray`'s zero-argument overload makes the bare name a call
- 2026-08-27 — `x /= 2` on an annotated int parameter keeps the Int64 slot
- 2026-08-27 — `uses sysutils` breaks three-argument `Concat`
- 2026-08-27 — `IntToStr` of a QWord prints it signed
- 2026-08-27 — Once ANY diagnostic is recovered, every lowering-only check stops firing
- 2026-08-27 — An attribute off a call returning a class VALUE does not parse when a subclass exists
- 2026-08-27 — `Supports(obj, IFoo, Ref)` — the three-argument form
- 2026-08-27 — An augmented subscript on a `__getitem__` class is refused
- 2026-08-27 — The result of a dynamic-array `Copy` cannot be indexed
- 2026-08-27 — `bytes.__getitem__` returns empty instead of the byte value
- 2026-08-27 — The point: move the conflict, don't manage it
- 2026-08-27 — xtensa PC-relative encoders silently truncate an out-of-range offset
- 2026-08-27 — A Unicode identifier is rejected by the lexer
- 2026-08-27 — regression: test-nilpy#src:test/test_nilpy_star_operand_in_a_variant.npy red at 39d4afb022ce (auto-filed by twatch)
- 2026-08-27 — A callable value is silently accepted where `str` is declared, and no longer compares equal to itself — bisected to `9bbbbef6c`
- 2026-08-27 — The deployed website tree is uncommitted, and it is the only copy
- 2026-08-27 — A method call on an Optional class field returns a raw pointer
- 2026-08-27 — Four sysutils string gaps
- 2026-08-27 — A diagnostic in a `uses`d unit names the wrong source file
- 2026-08-27 — `SizeOf(Real)` disagreed with the storage `Real` actually gets
- 2026-08-27 — `Low`/`High` of a set answer 0 and -1, not the element bounds
- 2026-08-27 — A second specialization of a generic that has a nested type SEGFAULTS at runtime
- 2026-08-27 — A shortstring function result prints as a pointer
- 2026-08-27 — `--esp-profile=bare` on esp32c3 cannot find the softfloat repack helper
- 2026-08-27 — A riscv32 diagnostic names the target as esp32
- 2026-08-27 — A guard reports its own failure and lets the call through
- 2026-08-27 — Inc/Dec does not accept the enclosing function's own name
- 2026-08-27 — A comparison dunder against a non-class operand answers wrongly
- 2026-08-27 — A parameter rebound on one path returns the widened type on every path
- 2026-08-27 — Index 0 of a frozen string is not the length byte
- 2026-08-26 — Agents kill each other's processes, because a name pattern cannot tell two agents apart
- 2026-08-26 — Repro
- 2026-08-26 — The self-host gate silently passes when the seed is newer than the sources
- 2026-08-26 — Enrol the fgl corpus rung in the tiers and the watcher
- 2026-08-26 — regression: test-aarch64#src:test/test_forin_member_access.pas red at 44193e547f6d (auto-filed by twatch)
- 2026-08-26 — A descendant method does not hide the inherited one
- 2026-08-26 — `gate.sh quick` should smoke the PINNED compiler against `lib/rtl`
- 2026-08-26 — Test jobs inherit the human's desktop session
- 2026-08-26 — Where the matrix actually spends its time
- 2026-08-26 — `gate.sh quick` is structurally blind to a broken pinned RTL
- 2026-08-26 — sorted(key=f) segfaults when f returns a tuple containing a string
- 2026-08-26 — RTTI kind numbers are the COMPILER's enum, while the unit documents FPC's
- 2026-08-26 — `asm volatile ("":::"memory")`
- 2026-08-26 — regression: test-nilpy#src:test/test_nilpy_lowercase_name_vs_class.npy red at 99f1dc81a039 (auto-filed by twatch)
- 2026-08-26 — `x ?: y`
- 2026-08-26 — Measured, 2026-08-25 (HEAD, self-hosted fixedpoint)
- 2026-08-26 — `d.Foo;` on an all-defaulted virtual method segfaults
- 2026-08-26 — Unary `!` in a C constant expression, and the bound the idiom exists to produce
- 2026-08-26 — The constant evaluator erases an ordinal's type
- 2026-08-26 — The C driver misses the shared runtime finalisation step
- 2026-08-26 — `**` anywhere but first in an argument list
- 2026-08-26 — regression: test-nilpy#src:test/test_nilpy_type_name_of_a_big_int.npy red at 44193e547f6d (auto-filed by twatch)
- 2026-08-26 — Measured, 2026-08-26, pinned compiler
- 2026-08-26 — Symptom
- 2026-08-26 — Tier job: self-compile differential across `-O` levels
- 2026-08-26 — Measured, 2026-08-25 (HEAD, and identically on the pre-fix binary)
- 2026-08-26 — regression: test-nilpy#src:test/test_nilpy_isinstance_over_a_type_value.npy red at 99f1dc81a039 (auto-filed by twatch)
- 2026-08-26 — Every NilPy compile pays a fixed ~9-second cost
- 2026-08-26 — Inferred return type of `/` is int — the float is truncated, or reinterpreted
- 2026-08-26 — `@dy` yields the handle, so a pointer to a dynamic array goes stale
- 2026-08-26 — An `array of const` integer arm picks the Int64 overload
- 2026-08-26 — regression: test-core#src:test/test_char_array_is_a_string.pas red at 357217a73608 (auto-filed by twatch)
- 2026-08-26 — regression: test-pascal-conformance#shard5/6 red at 44193e547f6d (auto-filed by twatch)
- 2026-08-26 — Measured, pinned compiler, 2026-08-25
- 2026-08-26 — A timed-out sha still counts as tested
- 2026-08-26 — `inherited` ignores the parent's default parameter values
- 2026-08-26 — A mixin cannot iterate `self`, and an abstract `__iter__` breaks its overrides
- 2026-08-26 — Two devtests measure the box, and one still does
- 2026-08-26 — A parameterless function is `undefined variable` as a METHOD-call argument
- 2026-08-26 — A pin that moves mid-run is not detected
- 2026-08-26 — Track T's own pushes destroy Track T's own breadth coverage
- 2026-08-26 — The push rate starves breadth coverage entirely
- 2026-08-26 — regression: test-aarch64#src:test/test_parallel_for_capture_aggr.pas red at 70f6a360f475 (auto-filed by twatch)
- 2026-08-26 — regression: lib-test#src:test/lib_mimic_xml_etree_elementtree.npy red at fd93e4a71c37 (auto-filed by twatch)
- 2026-08-26 — Every `.npy` compile still rebuilds the whole NilPy runtime from source
- 2026-08-26 — A cast-as-lvalue accepts a class type name but not a builtin type name
- 2026-08-26 — Typed constants — one declaration path, four filed symptoms
- 2026-08-26 — Four header omissions, one shape
- 2026-08-26 — `twatch --status` reports DOWN while the daemon is alive and testing
- 2026-08-26 — `TC.Log('class: %s = %d', ['answer', 42])`
- 2026-08-26 — bug-t-a-blame-range-is-computed-from-what-changed-not-from-what-the-job-can-see
- 2026-08-26 — regression: test-uforth#core red at 44193e547f6d (auto-filed by twatch)
- 2026-08-26 — regression: optdiff#shard1/12 red at fffd29ea840d (auto-filed by twatch)
- 2026-08-26 — Three mechanisms decide what becomes a `PChar`, and they disagree
- 2026-08-26 — `from collections import Counter` binds something that always answers zero
- 2026-08-26 — `class X(mod.X)` is refused in the main program (works in a module)
- 2026-08-26 — regression: test-fpjson#src:tools/install_lib_candidates.sh red at 99f1dc81a039 (auto-filed by twatch)
- 2026-08-26 — Measured, 2026-08-26, pinned compiler, x86-64
- 2026-08-26 — Measured, 2026-08-25 (HEAD)
- 2026-08-26 — Measured, 2026-08-26, pinned compiler
- 2026-08-26 — A leading `**` in a NilPy call is never detected
- 2026-08-26 — tstate blames regressions on commits that touch no compiler code
- 2026-08-26 — `Foo(MakeArray)` — a dyn-array result passed straight to a call types as Pointer
- 2026-08-26 — The FPC probes need a trunk oracle, not just installed stable
- 2026-08-26 — A class base that is an expression does not compile
- 2026-08-26 — A `String(...)` typecast is treated as a conversion, not as a cast
- 2026-08-26 — 22 sysutils/strutils symbols FPC has and pxx does not
- 2026-08-26 — A subscript inside a base class skips the subclass override
- 2026-08-26 — `hasattr` through an untyped parameter is always False
- 2026-08-26 — The queue makes filing a duplicate the path of least resistance
- 2026-08-26 — Stray tokens in a unit declaration section are silently skipped
- 2026-08-26 — What broke
- 2026-08-26 — FPC `{$mode objfpc}` assigned-enum ordinals use `:=`, not `=`
- 2026-08-26 — regression: test-threads#src:test/test_parallel_for_capture_aggr.pas red at 70f6a360f475 (auto-filed by twatch)
- 2026-08-26 — `(c ? f : g)(args)`
- 2026-08-26 — Every compile-time intrinsic hand-rolls its own operand parser
- 2026-08-26 — What broke
- 2026-08-26 — Symptom
- 2026-08-26 — `StrCat(buf, '-')` segfaults; `StrCat(buf, '--')` is fine
- 2026-08-25 — Symptom
- 2026-08-25 — Populate pointer-element metadata consistently — the low-risk fix for the conversion class
- 2026-08-25 — Measured, 2026-08-25 (pinned AND HEAD — identical)
- 2026-08-25 — The skeleton-language loop hides its /tmp paths in a shell variable
- 2026-08-25 — regression: test-core#src:test/test_nested_dynarray_field.pas red at b936d125601e (auto-filed by twatch)
- 2026-08-25 — Measured, 2026-08-25
- 2026-08-25 — regression: test-core#src:test/test_indexing_length_for_new_inc_positive.pas red at c59796cd1e1d (auto-filed by twatch)
- 2026-08-25 — Repro
- 2026-08-25 — regression: test-core#src:test/test_length_dynarray_call.pas red at b936d125601e (auto-filed by twatch)
- 2026-08-25 — Measured, 2026-08-25 (HEAD, self-hosted fixedpoint), vs `fpc 3.2.2 -Mobjfpc -O1`
- 2026-08-25 — A record-shaped `var` initialiser is refused
- 2026-08-25 — Measured, 2026-08-25
- 2026-08-25 — `Length('literal' + x)` does not parse
- 2026-08-25 — regression: test-nilpy#src:test/test_nilpy_callable_to_str_param_fails.npy red at 1b9b43e5b511 (auto-filed by twatch)
- 2026-08-25 — What happened
- 2026-08-25 — `test_read_text_char.pas` hardcodes two /tmp paths — the ratchet is red
- 2026-08-25 — `f(...)[i]` — indexing a call result
- 2026-08-25 — Symptom
- 2026-08-25 — Measured against fpc 3.2.2
- 2026-08-25 — Repro (fpc-testsuite tarray11 reduced)
- 2026-08-25 — regression: test-core#src:test/test_setlength_grow_capacity.pas red at 10dada0b7689 (auto-filed by twatch)
- 2026-08-25 — Measured, 2026-08-25 (HEAD)
- 2026-08-25 — Repro
- 2026-08-25 — Repro
- 2026-08-25 — Dynamic-array concatenation
- 2026-08-25 — regression: test-core#src:test/test_nilpy_json_module.npy red at a28bc3993a0e (auto-filed by twatch)
- 2026-08-25 — Calling through a function alias with a default omitted segfaults
- 2026-08-25 — Measured, 2026-08-25 (HEAD, `{$mode delphi}`)
- 2026-08-25 — Measured, 2026-08-25
- 2026-08-25 — regression: test-core#src:test/test_nilpy_json_reparse_heap.npy red at a28bc3993a0e (auto-filed by twatch)
- 2026-08-25 — regression: test-threads#src:test/test_parallel_for_capture_aggr.pas red at b936d125601e (auto-filed by twatch)
- 2026-08-25 — The fpjson suite overflows the fixed 4096-entry data-ptr fixup table
- 2026-08-25 — A TypeInfo TTypeData payloads, and the last three categories
- 2026-08-25 — regression: test-core#src:test/test_ptr_deref_vararg.pas red at b936d125601e (auto-filed by twatch)
- 2026-08-25 — Symptom
- 2026-08-25 — Repro
- 2026-08-25 — `read(f, number)` from a Text file reads the whole line
- 2026-08-25 — A member on a computed value silently reads the value's own bytes
- 2026-08-25 — regression: test-core#src:test/test_arr_of_ptr_elemrec_b354.pas red at 10dada0b7689 (auto-filed by twatch)
- 2026-08-25 — A call result is refused as a `const array of T` argument
- 2026-08-25 — `read(Text, ...)` lowers every destination to a whole-line read
- 2026-08-25 — Symptom
- 2026-08-25 — The sweep
- 2026-08-25 — regression: test-core#src:test/test_cast_deref_chain_siblings.pas red at 0bc0cfac61a8 (auto-filed by twatch)
- 2026-08-25 — The native tier times out and publishes a RED with nothing in it
- 2026-08-24 — `not` should trust the operand's type, not a list of node kinds
- 2026-08-24 — A builtin pointer-name cast is refused as an ASSIGNMENT TARGET
- 2026-08-24 — regression: test-core#src:test/test_basic_comprehensive.bas red at 7d4a3dbb99ce (auto-filed by twatch)
- 2026-08-24 — A unit-free BASIC program calls `PXXStrFromLit` and never emits it
- 2026-08-24 — Symptom
- 2026-08-24 — `VarToStr` is missing from `variants`
- 2026-08-24 — A Null Variant renders as `None` in a Pascal program
- 2026-08-24 — regression: test-core#src:test/test_default_of_aggregate.pas red at 203438d2cf63 (auto-filed by twatch)
- 2026-08-24 — Finalize an `out` Variant and an `out` managed record
- 2026-08-24 — `not` on an integer Variant answers a Boolean
- 2026-08-24 — The div-by-zero check is emitted on x86-64 only
- 2026-08-24 — Key the operator-overload table on both operands
- 2026-08-24 — A BASIC program is an illegal instruction on aarch64 and arm32
- 2026-08-24 — An `absolute` overlay of a by-VALUE parameter writes to the wrong slot
- 2026-08-24 — Symptom
- 2026-08-24 — regression: test-core#src:test/test_operator_implicit_shortstring_b356.pas red at 203438d2cf63 (auto-filed by twatch)
- 2026-08-24 — `--target=aarch64 -O3` segfaults the compiler on an empty program
- 2026-08-24 — A `Char` cast does not truncate to one byte
- 2026-08-24 — `absolute` over an untyped `var` parameter is refused
- 2026-08-24 — The builtin type-name table exists twice, and the two copies disagree
- 2026-08-24 — A string literal assigned to a PChar is empty
- 2026-08-24 — `VarClear` is undefined
- 2026-08-24 — `not Round(x)` is logical, not bitwise
- 2026-08-24 — regression: test-core#src:test/test_named_operators.pas red at 203438d2cf63 (auto-filed by twatch)
- 2026-08-24 — regression: test-core#src:test/test_variant_string_ops.pas red at df21e490d798 (auto-filed by twatch)
- 2026-08-24 — An assignment between incompatible types is not checked at all
- 2026-08-24 — A Boolean Variant writes as 1/0 on every target except x86-64
- 2026-08-23 — A string Variant never converts to a Boolean
- 2026-08-23 — A Variant `div` by zero SIGFPEs on x86-64 and answers garbage elsewhere
- 2026-08-23 — Null does not propagate through Variant arithmetic
- 2026-08-23 — A Variant comparison does not coerce a stringy operand
- 2026-08-23 — A Double Variant converts to an Integer by truncating, not rounding
- 2026-08-22 — `Low(x)` / `High(x)` of an ordinal variable answer 0 and -1
- 2026-08-22 — regression: test-core#src:test/test_classref.pas red at 392ea5d94545 (auto-filed by twatch)
- 2026-08-22 — Hint directives are refused on a variable or a field
- 2026-08-22 — regression: test-core#src:test/test_c_gtk_call.pas red at 98ed38202254 (auto-filed by twatch)
- 2026-08-22 — `Free` through a base reference skips the descendant's `Destroy`
- 2026-08-22 — SetLength on a QUALIFIED class var writes a string header over the array
- 2026-08-22 — regression: test-core#src:test/test_generic_inherit_delphi.pas red at 98ed38202254 (auto-filed by twatch)
- 2026-08-22 — regression: test-core#src:test/test_rtti.pas red at 392ea5d94545 (auto-filed by twatch)
- 2026-08-22 — regression: lib-test#src:tools/crtl_reachability.py red at 98ed38202254 (auto-filed by twatch)
- 2026-08-22 — An open array of a named dynamic array reads garbage
- 2026-08-22 — Anonymous enum and subrange types are not accepted
- 2026-08-22 — regression: test-core#src:test/fpcv.pas@2 red at 16a540b759c5 (auto-filed by twatch)
- 2026-08-22 — A whole-dynarray assignment to a `var` parameter was silently discarded
- 2026-08-22 — Relational operators in a constant expression
- 2026-08-22 — regression: lib-test#src:test/lib_mimic_xml_etree_elementtree.npy red at 1b9b43e5b511 (auto-filed by twatch)
- 2026-08-22 — A routine's label section clobbers the enclosing program's labels
- 2026-08-22 — A named `array[0..1] of TRow` type loses its element's dyn depth
- 2026-08-22 — `SizeOf(<expression>)` is refused
- 2026-08-22 — regression: test-pascal-conformance#shard0/6 red at 98ed38202254 (auto-filed by twatch)
- 2026-08-22 — `SetLength` on a 2-D dynarray `var` param is lost
- 2026-08-22 — A by-value record arg's temp outlives the call
- 2026-08-22 — Cast-as-lvalue only accepts a pointer deref
- 2026-08-22 — A dynarray `var` param written from a NESTED routine is discarded
- 2026-08-22 — regression: test-core#src:test/test_fpc_compat_batch.pas red at 1021bbdece65 (auto-filed by twatch)
- 2026-08-22 — The mode-Delphi generic rewrite was not idempotent
- 2026-08-22 — A pointer difference is typed as a pointer
- 2026-08-22 — An `out` parameter of a managed type is not cleared on entry
- 2026-08-22 — `WriteLn` of a WideChar prints its ordinal, not the character
- 2026-08-22 — The pinned compiler cannot build `lib/rtl/sysutils.pas`
- 2026-08-22 — advisory: demos#00 red at 98ed38202254 (auto-filed by twatch)
- 2026-08-21 — A local dynamic array of string is released as if it were a string handle
- 2026-08-21 — A parse error in a `uses`d unit reports a line number that exists in no file
- 2026-08-21 — regression: test-core#src:test/test_c_gtk_call.pas red at ef7f17d45caa (auto-filed by twatch)
- 2026-08-21 — Emission size — reachability-gated dead-code elimination (umbrella)
- 2026-08-21 — regression: test-core#src:test/cstatic_same_module_dup.c red at 99dcac2a2ade (auto-filed by twatch)
- 2026-08-21 — Four hosted targets install signal handlers without an altstack, so a stack overflow kills them outright
- 2026-08-21 — `Halt(n)` exits 0 on hosted riscv32
- 2026-08-21 — regression: test-nilpy#src:test/test_pascal_at_procvar_mode.pas@1 red at 23becd24b8e5 (auto-filed by twatch)
- 2026-08-21 — regression: tools-devtest#00 red at 1b9b43e5b511 (auto-filed by twatch)
- 2026-08-21 — i386 segfaults on an interface as-cast temporary
- 2026-08-21 — `classRef.Create` demanded a declared constructor
- 2026-08-21 — regression: test-nilpy#src:test/test_pascal_mode_switch_cli.pas@2 red at 23becd24b8e5 (auto-filed by twatch)
- 2026-08-21 — regression: test-core#src:test/test_c_gtk_window.pas red at ef7f17d45caa (auto-filed by twatch)
- 2026-08-21 — Dynarray Insert/Delete: managed elements, record/set Insert, field/element targets
- 2026-08-21 — An interface name used as a GUID value copied the RTTI blob
- 2026-08-21 — `ExceptObject` was missing, though `ExceptAddr` was not
- 2026-08-21 — A non-lvalue is refused as an interface argument
- 2026-08-21 — regression: test-nilpy#src:test/test_pascal_self_result_delphi.pas@1 red at 23becd24b8e5 (auto-filed by twatch)
- 2026-08-21 — Compiler intrinsics for hardware entropy (CPUID / RDRAND / RNDR / ESP RNG)
- 2026-08-21 — regression CASCADE: 11 jobs newly red in 4f526e338..8654c4d55 (241 commits) — auto-filed by twatch
- 2026-08-21 — A string function result inside a concat leaks on every cross target
- 2026-08-21 — Implement `Initialize()` / `Finalize()` over the ARC helpers
- 2026-08-21 — Reserved leading VMT slots for TObject's root methods
- 2026-08-21 — The scope-exit release matrix still has four holes
- 2026-08-21 — A local dynamic array of interfaces is not released at scope exit
- 2026-08-21 — `not` of a negated operand was a boolean not
- 2026-08-21 — `VisCacheVis` is sized by the string-table constant — and the cap it is tied to is too low
- 2026-08-21 — A unit's `{$mode}` turns delphi mode off for the program
- 2026-08-21 — Stack-overflow fault-to-raise loops forever without an SP reset
- 2026-08-21 — The missing layer between the frontends and the backends
- 2026-08-21 — A lua cross timeout is reported as wrong output from the backend
- 2026-08-21 — Nineteen copies of "does this target link the builtin unit?"
- 2026-08-21 — A memory fault dies silently, where FPC reports runtime error 216
- 2026-08-21 — regression: test-core#src:test/test_mode_delphi_callarg.pas red at a2ae11a64191 (auto-filed by twatch)
- 2026-08-21 — regression: test-core#src:test/test_procvar_value_context.pas red at a2ae11a64191 (auto-filed by twatch)
- 2026-08-21 — regression: test-core#src:test/test_mode_delphi.pas red at a2ae11a64191 (auto-filed by twatch)
- 2026-08-21 — ExitCode + finalization execution + Halt semantics (unblocks the erroru test family)
- 2026-08-21 — regression: test-c-conformance#shard1/6 red at 1b9b43e5b511 (auto-filed by twatch)
- 2026-08-21 — `nil` is not accepted as a method-pointer argument
- 2026-08-21 — FPC-compiler define profile (`fpcdefs.inc` build-config gates)
- 2026-08-21 — i386 and aarch64 dynamic-array assignment has no store arm
- 2026-08-21 — Four backends never release a local dynamic array at scope exit
- 2026-08-21 — Ordered string comparison compares handles, not content, on every cross target
- 2026-08-21 — A record copy does not retain an interface field
- 2026-08-21 — An unhandled exception exited 1, not 217
- 2026-08-21 — A failed `as` downcast exits 1, prints nothing, and cannot be caught
- 2026-08-21 — `PXXVarBinOp` still reads a string operand's payload as a number
- 2026-08-21 — regression: test-core#src:test/test_delphi_bare_alldefaulted_arg.pas red at a2ae11a64191 (auto-filed by twatch)
- 2026-08-21 — Move / FillChar as compiler intrinsics (future optimization)
- 2026-08-21 — Only the Pascal driver emits the signal runtime
- 2026-08-21 — A failed Variant conversion killed the process instead of raising
- 2026-08-21 — Exception unwind releases one interface too few on every cross target
- 2026-08-21 — A string-tagged address binop walls off NilPy on three targets
- 2026-08-21 — `array of <named dyn-array alias>` crashes on every cross target
- 2026-08-21 — Dynamic soname discovery (no execve)
- 2026-08-21 — A by-value interface param dies at caller scope exit, not callee return
- 2026-08-21 — riscv32 drops interface releases in six shapes
- 2026-08-21 — regression: test-core#src:test/test_mode_delphi_methptr.pas red at a2ae11a64191 (auto-filed by twatch)
- 2026-08-21 — `Initialize()` / `Finalize()` standard procedures (managed-type intrinsics)
- 2026-08-21 — Dynamic tables left their fixed-size shadows behind
- 2026-08-21 — i386: multidim `SetLength` mints an untyped temporary
- 2026-08-21 — regression: test-core#src:test/test_record_helper_for_string_b331.pas red at 2e7286e499d1 (auto-filed by twatch)
- 2026-08-21 — A nested inline `specialize` was refused outside a type section
- 2026-08-21 — SetLength shrink does not release dropped interface elements
- 2026-08-21 — `ClassParent` was missing from the class-reference operations
- 2026-08-21 — `Copy` on a nested dynamic array
- 2026-08-21 — `ev := nil` on a method pointer segfaults
- 2026-08-21 — Store-reload (redundant load) elimination — -O1 pass
- 2026-08-21 — AIntToStr returns '' for negative numbers
- 2026-08-21 — Strict flags should scope by dialect ownership, not by program-vs-unit
- 2026-08-21 — A local array of interfaces is never released at scope exit
- 2026-08-21 — The main thread has no TLS block
- 2026-08-21 — Emit nil checks at the site, so a nil deref is catchable
- 2026-08-21 — One concept, four copies: which variant tags carry a refcounted object
- 2026-08-21 — regression: test-pascal-conformance#shard4/6 red at 1b9b43e5b511 (auto-filed by twatch)
- 2026-08-21 — A typed const array is built by startup code, not stored as data
- 2026-08-20 — `TypeInfo(T)` for every type, not just enums
- 2026-08-20 — One resolved-file identity for a translation unit
- 2026-08-20 — `FindTypeAlias` prints a debug dump for `puint8`
- 2026-08-20 — `FindTypeAlias failed to find puint8!` on stderr, compile continues
- 2026-08-20 — regression: test-core#src:test/test_timer.pas red at 26dae20b9dec (auto-filed by twatch)
- 2026-08-20 — `Integer(x)` as an rvalue is a bit-pattern pun, not a cast
- 2026-08-20 — regression: test-core#src:test/test_strict_overload_width.pas@1 red at 943c706936b3 (auto-filed by twatch)
- 2026-08-20 — regression: test-core#src:compiler/compiler.pas@2 red at 003d733936aa (auto-filed by twatch)
- 2026-08-20 — regression: test-core#src:compiler/compiler.pas@2 red at 57b9b7148d32 (auto-filed by twatch)
- 2026-08-20 — A function-pointer TABLE is not callable: local array, and struct field
- 2026-08-20 — Variant arithmetic reads a string's payload as a number
- 2026-08-20 — regression: test-core#src:compiler/compiler.pas@2 red at 21117f415284 (auto-filed by twatch)
- 2026-08-20 — `r.c[i]` on a field `array[1..3]` addresses one element past the field
- 2026-08-20 — An interface passed by value leaks a reference per call
- 2026-08-20 — Mutually recursive generic specialization hangs the compiler
- 2026-08-20 — A `class var` takes no array type, and a named array type is silently a scalar
- 2026-08-20 — regression: test-nilpy#src:test/test_nilpy_pascal_unit_keeps_fpc_method_shadowing.npy red at 57b9b7148d32 (auto-filed by twatch)
- 2026-08-20 — regression: test-core#src:test/test_integer_longint_overload.pas red at 943c706936b3 (auto-filed by twatch)
- 2026-08-20 — A method of a NESTED type cannot be implemented: `TOuter.TInner.Method`
- 2026-08-20 — `*f() = x` evaluates the call on the left TWICE
- 2026-08-20 — `array of <named dynamic-array alias>` loses a dimension in a TYPE declaration
- 2026-08-20 — P an inline typecast drops a pointer field's POINTEE TYPE
- 2026-08-20 — regression: test-core#src:test/cglobal_fnptr_addressof_b161.c red at b645e1b2aff7 (auto-filed by twatch)
- 2026-08-20 — regression: selfhost-fixedpoint#src:tools/selfhost_fixedpoint.sh red at 21117f415284 (auto-filed by twatch)
- 2026-08-20 — P typed class consts of the same name in two classes collide
- 2026-08-20 — `SizeOf(<array field>)` returns the element size
- 2026-08-20 — A job that was KILLED is published as a job that FAILED
- 2026-08-20 — regression CASCADE: 13 jobs newly red in 9bfb7fcfa..21f098e32 (261 commits) — auto-filed by twatch
- 2026-08-20 — An interface method call picks the first slot of the name, not the matching overload
- 2026-08-20 — `read(f, c)` still errors, but the thing it was waiting for now exists
- 2026-08-20 — A cpyext extension module is a Python module, not a Pascal unit — make it bare-importable via `PyInit_<name>`
- 2026-08-20 — Carve NilPy's lvalue/member parsing out of `parser.inc` (split 2)
- 2026-08-20 — `ORACLE_CC` is keyed on the ISA; the file's own doctrine says the data model decides
- 2026-08-20 — Own-language-first symbol resolution: the native language wins
- 2026-08-20 — regression: test-core#src:test/test_asm_emit.pas red at 943c706936b3 (auto-filed by twatch)
- 2026-08-20 — `Default(TRecord)` segfaults; `Default(TArray)` silently does nothing
- 2026-08-20 — Pointer difference on a `long long *` answers 0
- 2026-08-20 — A record with an interface field is not zero-initialised
- 2026-08-20 — A static `array of Char` is not string-compatible in either direction
- 2026-08-20 — `Str` of a QWord formats it signed
- 2026-08-20 — Unary minus on an unsigned operand truncates to 32 bits before the widen
- 2026-08-20 — An unsigned dividend made the whole division unsigned
- 2026-08-20 — A struct-field function-pointer array is not callable
- 2026-08-20 — `Inc(p)` on a typed pointer steps one byte
- 2026-08-20 — regression CASCADE: 17 jobs newly red in 8a5e4abb3..426b90021 (3 commits) — auto-filed by twatch
- 2026-08-20 — `array[-2..2] of Integer = (...)` initialises the wrong slots
- 2026-08-20 — Assigning a dynamic array of interfaces is lowered as an interface assign
- 2026-08-20 — `test/quickjs/runner.c` segfaults with zero output on the full `smoke.js`
- 2026-08-20 — Makefile-inner timeouts are invisible to testmgr's contention logic
- 2026-08-20 — The compiler's output depends on how the compiler was invoked (argv[0])
- 2026-08-20 — `test-riscv32#src:test/test_cross_float.pas` — the two sides print the same numbers at different widths
- 2026-08-20 — A Pascal unit whose body touches a managed string dies at import from C: "call to a runtime stub that was never emitted"
- 2026-08-20 — A narrower signed operand lost to a wider unsigned one
- 2026-08-20 — regression: test-core#src:test/cfnptr_typedef_global_b166.c red at b645e1b2aff7 (auto-filed by twatch)
- 2026-08-20 — `High(TGap)` counts the members instead of reading their values
- 2026-08-20 — A class does not inherit from TObject at run time
- 2026-08-20 — A pointer cast of a string literal points at the length prefix
- 2026-08-20 — An as-cast assigned to an interface variable is not retained
- 2026-08-20 — A compound assignment evaluates its lvalue TWICE
- 2026-08-20 — A local array of interfaces is not zero-initialised
- 2026-08-20 — `String(p)` on a PChar is rejected while `AnsiString(p)` works
- 2026-08-20 — regression: test-core#src:test/cfnptr_deref_call_b241.c red at b645e1b2aff7 (auto-filed by twatch)
- 2026-08-20 — `class operator` + named operators (Initialize/Finalize/Explicit/...)
- 2026-08-20 — The C entry stub needs an INIT phase, for `environ`
- 2026-08-20 — Carve out `plexer` / `pparser` so Track P owns its own files
- 2026-08-20 — `(pc + 2)^` derefs as an integer
- 2026-08-20 — Two function-result interfaces into a local dyn array segfault
- 2026-08-19 — A red job records no reason
- 2026-08-19 — live.json published 100% for every INTERRUPTED run
- 2026-08-19 — A job that outgrows its class can never pass again
- 2026-08-19 — `tkinter` is missing from the Python-serving unit list
- 2026-08-19 — One signature record for every callable carrier
- 2026-08-19 — The pin shadow cannot clear while its reds are older than the pin
- 2026-08-19 — A resolved ticket permanently suppresses that job's next stub
- 2026-08-19 — A callable value carries its signature type
- 2026-08-19 — `-Fu` is how a Python package is found, and nothing says so
- 2026-08-19 — `from collections.abc import ...` is swallowed by the `collections` root rule
- 2026-08-19 — No qualified syntax for a cross-language import
- 2026-08-19 — A user class's `keys()`/`items()`/`values()` is dispatched as a dict view
- 2026-08-19 — `unit X deprecated 'msg';` — a unit hint directive is a parse error
- 2026-08-19 — `for x in obj:` doesn't fall back to `__getitem__`/`__len__` for a custom container
- 2026-08-19 — A C definition of an intrinsic name overwrites the Pascal routine, unreachably
- 2026-08-19 — fuzz.sh reports an identical crash on every target as a divergence
- 2026-08-19 — A bare NilPy import means Python; another language needs its extension
- 2026-08-19 — Detect citations that name a bookkeeping commit, never repair them
- 2026-08-19 — Document how to deal with name collisions
- 2026-08-19 — regression: test-core#src:test/test_call_result_member.pas red at a76303231306 (auto-filed by twatch)
- 2026-08-19 — `mimic FPC` compatibility mode
- 2026-08-19 — Document `--fpc-float-errors` in the CLI reference
- 2026-08-19 — regression: test-core#src:test/test_stmt_call_result_selector_b318.pas red at a76303231306 (auto-filed by twatch)
- 2026-08-19 — `StrToFloat` is milliseconds per value for small exponents
- 2026-08-19 — `make revert`, the documented pin brake, does not fire
- 2026-08-19 — regression: test-core#src:test/test_procedure_as_value_ok.pas red at a76303231306 (auto-filed by twatch)
- 2026-08-19 — `mimic_xml_etree_elementtree`: the tree model
- 2026-08-19 — regression: test-core#src:examples/tk/field_class_identity.npy red at 9bbbbef6c055 (auto-filed by twatch)
- 2026-08-19 — Pin v357 breaks tk-nilpy — `callable value of a def with no signature record`
- 2026-08-19 — `StrToFloat`'s big integers want 64-bit limbs
- 2026-08-19 — Glossary: the slang, and what it maps to in the other language
- 2026-08-19 — A callable in a variable loses to a `def` of the same name
- 2026-08-19 — regression: test-core#src:test/test_ctor_result_member.pas red at a76303231306 (auto-filed by twatch)
- 2026-08-19 — A keyword argument through a callable value is `undefined variable`
- 2026-08-19 — Index an array-returning call directly: `MkArr[i]`, `MkR2[i,j].field`
- 2026-08-19 — `WriteLn`/`Str` of a `Single` use Double width
- 2026-08-19 — `\` before a newline inside a string literal is not a line continuation
- 2026-08-19 — C variable-length arrays, lowered through alloca
- 2026-08-19 — A module-level def taken as a value loses its defaults on the boundfn carrier
- 2026-08-19 — split_jobs misses a /tmp dependency reached through a shell variable
- 2026-08-19 — `lib_dns_async` ignores six bind returns and can park forever
- 2026-08-19 — A Nil Python generator can only be consumed by a `for`, never held as a value
- 2026-08-19 — regression: test-core#src:test/test_nilpy_bound_method_in_module.npy red at 9bbbbef6c055 (auto-filed by twatch)
- 2026-08-19 — `lib_tls` hangs forever when its hardcoded port is unavailable
- 2026-08-19 — A Python module's identity is its NAME, not its FILE — so one file compiles twice
- 2026-08-19 — Five tool devtests are broken on master, and nothing runs them
- 2026-08-19 — regression: test-core#src:test/test_nilpy_from_import_as_rename.npy red at 9bbbbef6c055 (auto-filed by twatch)
- 2026-08-19 — A saved partial is evicted by the next run of different work
- 2026-08-19 — A call through a callable value drops the callee's defaults
- 2026-08-19 — regression: test-core#src:test/test_isas_open_world_b325.pas red at a76303231306 (auto-filed by twatch)
- 2026-08-19 — Verify every claim on the Nil Python page by compiling it
- 2026-08-19 — The set symmetric-difference operator `><` is not parsed
- 2026-08-19 — `write(r:W)` ignores the field width when no decimals are given
- 2026-08-19 — Accept `{$asmMode default}` (and other non-intel asmmode values)
- 2026-08-19 — regression: test-core#src:examples/tk/callbacks.npy red at 9bbbbef6c055 (auto-filed by twatch)
- 2026-08-19 — `pin_verify` records positional job numbers and a stale version label
- 2026-08-19 — Self-compile at `-O0` overflows the code buffer
- 2026-08-19 — `write(v:w:d)` on a huge magnitude: three backends, three answers, none FPC's
- 2026-08-19 — `collections.abc`: Mapping and MutableMapping as a shim
- 2026-08-19 — A header carrying a body compiles twice across the macro-table reset
- 2026-08-19 — `import 'classes.pas'` still dies on `Delete` — the escape hatch does not clear the wall
- 2026-08-19 — regression: test-core#src:test/test_asm_ifdef_multiarch.pas red at 498c6dea3f48 (auto-filed by twatch)
- 2026-08-19 — `sync.sh` fills one spelling of PENDING-COMMIT; `check` counts two
- 2026-08-18 — A builtin subclass's subscript override is skipped by the operator form
- 2026-08-18 — regression: test-pascal-conformance#shard5/6 red at 61e2448bac6d (auto-filed by twatch)
- 2026-08-18 — `xml.dom` is two questions, and neither one is worth doing yet
- 2026-08-18 — `six.moves` needs `http.client` and `urllib` to exist first
- 2026-08-18 — regression: test-aarch64#src:test/test_set_runtime.pas red at 61e2448bac6d (auto-filed by twatch)
- 2026-08-18 — `from X import n` of a compiler-provided module binds no names
- 2026-08-18 — regression: test-core#src:test/test_set_runtime.pas red at ce57db4cdda5 (auto-filed by twatch)
- 2026-08-18 — regression: test-nilpy#src:examples/tk/callbacks.npy red at 8f629af38632 (auto-filed by twatch)
- 2026-08-18 — Two-argument `super(Cls, self)` does not parse
- 2026-08-18 — Subclassing a builtin type (`list`, `dict`, `str`) is unsupported
- 2026-08-18 — regression: test-core#src:test/test_stackless_gen.pas red at dfac1da00b04 (auto-filed by twatch)
- 2026-08-18 — A shim's classes are invisible when two modules import the same shim
- 2026-08-18 — regression: test-core#src:test/test_nested_class_type_b348.pas red at ce57db4cdda5 (auto-filed by twatch)
- 2026-08-18 — `yield` only works inside a `for` — a while-loop generator does not compile
- 2026-08-18 — A renamed class loses its class-level attributes
- 2026-08-18 — A real `urlopen` for `mimic_urllib_request`, over the RTL's own stack
- 2026-08-18 — `from sys import X` fails while `import sys` works
- 2026-08-18 — The module-locals cap hides a compiler stack overflow
- 2026-08-18 — Subscripting a container literal inside a function segfaults
- 2026-08-18 — regression: test-core#src:test/test_set_literal_element_types.pas red at ce57db4cdda5 (auto-filed by twatch)
- 2026-08-18 — A builtin type's method cannot be called unbound
- 2026-08-18 — The last class in a module reads every attribute as zero
- 2026-08-18 — Module shims for the html5lib / third-party corpus
- 2026-08-18 — Lookups that ask about the spelling, not the resolved unit
- 2026-08-18 — `from <shim> import Class` loses the class's class-level attributes
- 2026-08-18 — A qualified base class named like its subclass is rejected as self-inheritance
- 2026-08-18 — regression: test-pascal-conformance#shard4/6 red at 61e2448bac6d (auto-filed by twatch)
- 2026-08-18 — `from M import X as alias` loses what X is
- 2026-08-18 — A timeout bisects to an innocent commit, and the report does not say so
- 2026-08-18 — A default argument is dropped on every cross-module call
- 2026-08-17 — `from mod import NAME as ALIAS` binds 0 inside a pulled `.py` module
- 2026-08-17 — A dict cannot be unpacked into a call
- 2026-08-17 — The shim slot is Pascal-only; a Python-shaped shim has nowhere honest to live
- 2026-08-17 — One concept, two mechanisms, and only one carries the capability
- 2026-08-17 — The builtin `Warning` exception hierarchy is missing
- 2026-08-17 — A Synapse TLS handshake jumps into the stack inside `X509_verify_cert`
- 2026-08-17 — `mimic_six` and `mimic_warnings` — the biggest lever for the library campaign
- 2026-08-17 — nilpy: a tkinter façade (object API + callbacks)
- 2026-08-17 — `make lib-test` is unrunnable in a fresh clone — nothing fetches synapse
- 2026-08-17 — bug(T): `twatch --status` / `trackt health` report DOWN for a watcher that is UP
- 2026-08-17 — `IntToHex` of a negative Integer prints 16 digits, not 8
- 2026-08-17 — regression: test-core#src:test/test_procvar_value_context.pas red at 0e4ad46330ca (auto-filed by twatch)
- 2026-08-17 — triage: the 17-job CASCADE at bad=343a52551808 — its 5 NilPy jobs are GREEN natively at HEAD
- 2026-08-17 — The corpus ladder scan passes one `-Fu` root, so cross-package imports read as compiler walls
- 2026-08-17 — reportlab mimic: fidelity against the real oracle
- 2026-08-17 — Assigning to a name that collides with a Pascal shim's attribute fails
- 2026-08-17 — The star forwarder spreads a dict onto a callee that has its own `**kwargs`
- 2026-08-17 — A generic and a non-generic class cannot share a name
- 2026-08-17 — A temporary receiver in an argument resolves to the SHIM's type, not the user's class
- 2026-08-17 — Enroll lib-test and demos in the watcher
- 2026-08-17 — Package / sibling-module resolution is now the largest corpus wall
- 2026-08-17 — `mandelbrot_gui` does not build — `gtk_main_quit` with no `gtk3_c`
- 2026-08-17 — A type as a default parameter value segfaults when the default is taken
- 2026-08-17 — A relative import (`from .sub import X`) is not parsed
- 2026-08-17 — A package does not re-export what its `__init__.py` imports
- 2026-08-17 — Track T: uforth benchmark harness — pxx-compiled vs interpreted Python baselines
- 2026-08-16 — Set literal elements are not type-checked against the element type
- 2026-08-16 — Constant expressions were integer-only — four wrongs from one gap
- 2026-08-16 — `--strict-fpc` narrows a negated-Integer shift that the default gets right
- 2026-08-16 — High/Low reject the 64-bit type aliases
- 2026-08-16 — `Power` lost a ulp when it got 26x faster
- 2026-08-16 — A builtin type passed to `map`/`filter` segfaults
- 2026-08-16 — A routine-local typed const is re-initialised on every call
- 2026-08-16 — regression: test-core#src:test/test_local_typed_const.pas red at 88b863e7c731 (auto-filed by twatch)
- 2026-08-16 — `><` (set symmetric difference) was not supported
- 2026-08-16 — pasmith's `gen-args` header had drifted from the generator it describes
- 2026-08-16 — bug(A): a doubly-nested routine cannot capture ANY enclosing variable, and the error blames the call site
- 2026-08-16 — pasmith: finer divergence signatures (end-of-program over-dedup)
- 2026-08-16 — Retire the `__crtl_*` dodge-prefixes in crtl math
- 2026-08-16 — The csmith harness files "slower than the limit" as PXX_TIMEOUT
- 2026-08-16 — regression: test-nilpy#src:test/test_nilpy_pow_matches_cpython.npy red at 096da361dd93 (auto-filed by twatch)
- 2026-08-16 — IndexError messages name neither the sequence kind nor the operation
- 2026-08-16 — regression CASCADE: 17 jobs newly red at 343a52551808 (auto-filed by twatch)
- 2026-08-16 — xtensa atomics: the encoders are right and `S32C1I` still faults on esp32s3
- 2026-08-16 — Val rejects the radix prefixes, and its `code` argument is not optional
- 2026-08-16 — Enroll the Pascal FPC-testsuite conformance battery in testmgr
- 2026-08-16 — The float `**` operator evaluates its exponent twice
- 2026-08-16 — regression: lib-test#src:test/lib_tls.pas red at 459e96f985d1 (auto-filed by twatch)
- 2026-08-16 — Bare all-defaulted routine name is refused in argument position
- 2026-08-16 — Float overflow answers `inf` where CPython raises `OverflowError`
- 2026-08-16 — Inline asm blocks on xtensa (last leg of the multi-arch rollout)
- 2026-08-16 — A nested class's method implementation takes only one qualifier
- 2026-08-16 — `x ** y` in NilPy is its own pow, and it is ~1e-12 out
- 2026-08-16 — `uses math` in a NilPy program breaks `abs` on a float
- 2026-08-16 — NilPy has no complex number type
- 2026-08-16 — A failed file syscall lost both its class and its message
- 2026-08-16 — A str into a by-name pylib list parameter segfaults
- 2026-08-16 — regression: test-core#src:examples/tk/tkinter_facade.npy red at f8b8a7eb5ed2 (auto-filed by twatch)
- 2026-08-16 — sizeof of an array compound literal is the pointer size
- 2026-08-16 — regression: test-core#src:test/test_strict_overload_width.pas@1 red at fea1f33d2f30 (auto-filed by twatch)
- 2026-08-16 — Dereferencing a pointer-to-array loads instead of decaying
- 2026-08-16 — regression: test-core#src:test/cstr_table_2d_rows.c red at 7eef29e052d2 (auto-filed by twatch)
- 2026-08-16 — A multi-dim array decays with the wrong stride, in both shapes
- 2026-08-16 — The pow expectation predates the complex type, and pxx's complex pow differs from CPython
- 2026-08-16 — A const named like its own nested routine binds the routine
- 2026-08-16 — `to_bytes` refused big-endian and demanded `signed=`
- 2026-08-16 — A tagged variant record is padded to eight
- 2026-08-16 — `--strict-fpc` does not reproduce FPC's shift widths
- 2026-08-16 — `duplicate class name` is scope-blind: nested classes collide across enclosing scopes
- 2026-08-16 — `dict.fromkeys` of a str segfaults
- 2026-08-16 — regression: test-nilpy#src:test/test_nilpy_int_promotion_default.npy red at 459e96f985d1 (auto-filed by twatch)
- 2026-08-16 — A class method does not shadow a builtin of the same name
- 2026-08-16 — regression: lib-test#src:test/lib_classes_tthread.pas red at 459e96f985d1 (auto-filed by twatch)
- 2026-08-16 — float methods are invisible to the runtime method dispatcher
- 2026-08-16 — Bench slowdowns are quantized by CPU P-state, not smeared by contention
- 2026-08-16 — A `System.`-qualified call binds a same-named user routine
- 2026-08-16 — A static method called on the class takes no keyword arguments
- 2026-08-16 — The FPC probe reports the deliberate `shl` deviation as a new divergence
- 2026-08-16 — A struct assignment passed by value copies only eight bytes
- 2026-08-16 — A C cast to `float` in value position never rounds to single precision
- 2026-08-16 — `{v:g}` was str()'s form, not %g — while the correct %g sat one file away
- 2026-08-16 — A chained method on a runtime-dispatched result is refused
- 2026-08-16 — `Integer` vs `LongInt`: the same type lost the exact overload match
- 2026-08-16 — A string-literal row of a 2-D char array stored its address
- 2026-08-16 — regression: test-core#src:test/test_typed_const_record.pas red at 406a40dfaffa (auto-filed by twatch)
- 2026-08-16 — A 2-D array parameter loses its row length
- 2026-08-16 — pasmith: `for` limits that are variables, and limits at the type maximum
- 2026-08-16 — regression: lib-test#src:test/crtl_exp2.c red at 096da361dd93 (auto-filed by twatch)
- 2026-08-16 — regression: test-core#src:test/test_val_builtin.pas red at 7462448a21bd (auto-filed by twatch)
- 2026-08-16 — pasmith: fuzz the {$Q+}/{$R+} check machinery
- 2026-08-16 — pasmith: a `const` section for the real-typed constant evaluator
- 2026-08-16 — regression: lib-test#src:tools/crtl_reachability.py red at 137a182ad46a (auto-filed by twatch)
- 2026-08-16 — a NilPy `import` leaks the unit's names into the Python namespace
- 2026-08-16 — `for` loop: limit re-evaluated per iteration; infinite loop at the type maximum
- 2026-08-16 — `Power` and `LogN`: the two that need a fast hi/lo log
- 2026-08-15 — A nested def's default is evaluated at value time
- 2026-08-15 — `.format()` refuses keyword fields
- 2026-08-15 — pyeval cannot call a host method with three user parameters
- 2026-08-15 — regression: test-nilpy#src:test/test_nilpy_lambda_in_range_comprehension.npy red at 4c9da77f9368 (auto-filed by twatch)
- 2026-08-15 — FPC-compatible Get/SetExceptionMask in lib/rtl/math.pas
- 2026-08-15 — A one-name tuple loop target is refused
- 2026-08-15 — regression: test-opt#src:test/c_inline_strlit_arg.c red at 36d1bffda39d (auto-filed by twatch)
- 2026-08-15 — `*=` on a list rebinds instead of mutating
- 2026-08-15 — `*xs` into a callee that declares `*args`
- 2026-08-15 — The measured non-ASCII surface: `len`, `upper`, `chr`, `ord` all diverge
- 2026-08-15 — regression: test-nilpy#src:test/test_cpyext_errformat.npy red at 36d1bffda39d (auto-filed by twatch)
- 2026-08-15 — A statically clashing operand pair refuses without naming the types
- 2026-08-15 — `import codecs` — the next wall for the compile-real-libraries campaign
- 2026-08-15 — an object key with `__eq__` but no `__hash__` is stored and then never found
- 2026-08-15 — max()/min() do not iterate a dict
- 2026-08-15 — NilPy case mapping cannot change the code-point count
- 2026-08-15 — A folded string literal reaches a managed parameter raw
- 2026-08-15 — regression: test-core#src:test/test_asyncecho.pas red at 60502ed0c353 (auto-filed by twatch)
- 2026-08-15 — regression: test-core#src:test/test_nilpy_forward_module_global.npy red at dbf783346025 (auto-filed by twatch)
- 2026-08-15 — `mimic_string` — the Python `string` module
- 2026-08-15 — `Int()` of a large Double saturates to 32 bits on i386 and arm32
- 2026-08-15 — A variadic def reached through a function VALUE
- 2026-08-15 — regression: test-nilpy#src:test/test_nilpy_import_c_header_still_works.npy red at 36d1bffda39d (auto-filed by twatch)
- 2026-08-15 — `*=` on a sequence yields empty
- 2026-08-15 — regression: test-core#src:test/test_nilpy_sorted_pairs.npy red at bb845b13ceb3 (auto-filed by twatch)
- 2026-08-15 — The star forwarder refuses a container-typed parameter
- 2026-08-15 — `Int()` of a large double is `INT64_MIN` on x86-64
- 2026-08-15 — Rewrite `tkhtmlview` in NilPy
- 2026-08-15 — i386: reading or writing through a `var Double` parameter faults
- 2026-08-15 — `-S` could not decode the saturation sequence
- 2026-08-15 — A multi-argument raise loses its argument tuple to the fold
- 2026-08-15 — regression: test-nilpy#src:test/test_nilpy_builtin_over_variant_receiver.npy red at 4c9da77f9368 (auto-filed by twatch)
- 2026-08-15 — A subscript sees `__getitem__` only through a named receiver
- 2026-08-15 — A star operand inside a variant is cast, not converted
- 2026-08-15 — `sysutils`: `StrToDate` / `StrToDateTime` and the `TryStrTo*` date variants
- 2026-08-15 — regression: test-core#src:test/test_c_unit_globals.pas red at 60502ed0c353 (auto-filed by twatch)
- 2026-08-15 — `Ord()` of a one-character untyped const answers its address
- 2026-08-15 — regression: test-core#src:test/test_uses_order_pylib_exception_b.pas red at 60502ed0c353 (auto-filed by twatch)
- 2026-08-15 — `--strict-uses` turns the pxxcio C bridge into undefined dynamic imports
- 2026-08-15 — regression CASCADE: 29 jobs newly red at 63d1d0de90d3 (auto-filed by twatch)
- 2026-08-15 — regression: test-core#src:test/test_nilpy_star_methods_and_targets.npy red at 89dae725b972 (auto-filed by twatch)
- 2026-08-15 — A generator expression is not consumed once
- 2026-08-15 — Scope hiding covers routines but not types/classes
- 2026-08-15 — The RTL's sin/cos have no usable argument reduction
- 2026-08-15 — A struct assignment used as a value runs its RHS twice
- 2026-08-15 — A collecting lambda
- 2026-08-15 — A field assigned from a class-instance global reads garbage when typed
- 2026-08-15 — `divmod` on a user class: Runtime error 219
- 2026-08-15 — `mimic_codecs` — the stdlib-C edge the html5lib ladder starts on
- 2026-08-15 — A lambda in a range comprehension captures the counter past the end
- 2026-08-15 — `-g`: DWARF emission recurses forever on mutually-referencing classes
- 2026-08-15 — `__eq__` without `__hash__`: the dict entry goes in and never comes out
- 2026-08-15 — aarch64: `WriteLn(Low(Int64))` prints negated digit bytes
- 2026-08-15 — The no-full-suite hook refuses a dry run, and lets half the long tiers through
- 2026-08-15 — `list(obj)` over a user iterable answers `[]`
- 2026-08-15 — An accumulator value tracker — the scaffold `-O` passes keep waiting for
- 2026-08-15 — `int()` of a division reads the double's bits
- 2026-08-15 — `Tanh` returns NaN for |x| >= 710, and for Inf
- 2026-08-15 — `str.encode` / `bytes.decode` ignore the encoding argument
- 2026-08-15 — Class-name collisions across units resolve first-not-last
- 2026-08-15 — A field constructed after an `if` in the same method loses its class
- 2026-08-15 — Multiple inheritance where a base comes from another module
- 2026-08-15 — `ArcSin` / `ArcCos` lose up to 2 ulps
- 2026-08-15 — `*xs` into a fixed-arity builtin
- 2026-08-15 — `@overload` is refused
- 2026-08-15 — `len()` of a `str` parameter counts bytes; `s[i]` counts characters
- 2026-08-15 — `--strict-fpc` should pick the narrowest integer overload
- 2026-08-15 — `setattr` is absent
- 2026-08-15 — `int()` and `float()` ignore `__int__` / `__float__`
- 2026-08-15 — NilPy: str.encode / bytes.decode ignore the codec argument
- 2026-08-15 — i386 / arm32 ignore the field width when writing an Int64
- 2026-08-15 — A nested def shadowed by an outer name binds to None
- 2026-08-15 — `for … in [1.5, 2.5]` iterates once, with 0.0
- 2026-08-15 — `strutils`: the `Ansi*` predicate family is missing
- 2026-08-15 — `Sqrt` is 1 ULP low on some normal inputs
- 2026-08-15 — `Trunc` / `Round` of an out-of-range double return INT64_MIN silently
- 2026-08-15 — `bytes` is missing almost all of its Python methods
- 2026-08-15 — `for x in <user object>` does not use `__iter__`/`__next__`
- 2026-08-15 — math: the remaining missing names, and `degrees()` associates the wrong way
- 2026-08-15 — The `@` matrix-multiply operator does not parse
- 2026-08-15 — `lambda a, b=2:` does not parse
- 2026-08-15 — A NilPy name resolves case-insensitively against a builtin
- 2026-08-15 — test_conformance_1 asserts the bug that `fix(P): a typecast of a Variant CONVERTS` removed
- 2026-08-15 — `Ln` / `Exp`: the fast default path, which trig now has and they do not
- 2026-08-15 — `dict(zip(...))` is empty
- 2026-08-15 — `static` functions in different crtl modules are treated as one unit
- 2026-08-15 — The bare-genexpr lookahead ran past the end of the statement
- 2026-08-15 — `hasattr` is blind to a property
- 2026-08-15 — `max(*[xs])` / `min(*[xs])` bind the wrong overload
- 2026-08-15 — regression: test-asm#src:compiler/compiler.pas red at d2172550a236 (auto-filed by twatch)
- 2026-08-15 — `__getattr__` (dynamic attribute fallback) is not supported
- 2026-08-15 — `sorted(xs, key=str)` jumps to address 13
- 2026-08-15 — `class X(mod.X)` hangs the compiler
- 2026-08-15 — Non-transitive `uses` covers routines and types, not consts/vars/enums — and not interface-section uses at all
- 2026-08-15 — `*unpacking` that would fill a fixed parameter
- 2026-08-15 — A computed attribute name cannot see a property
- 2026-08-15 — Comparing None with a number answers instead of raising
- 2026-08-15 — `hasattr` on a builtin container or a str answers False
- 2026-08-15 — A bare generator expression is refused as a method argument
- 2026-08-15 — `@dataclass(order=True)` does not parse — the decorator takes no arguments
- 2026-08-15 — `f.writelines(...)` is absent
- 2026-08-15 — An `array of const` literal does not match once the name is a cross-unit overload set
- 2026-08-15 — regression: test-core#src:test/test_c_cross_ns_arity.pas red at 60502ed0c353 (auto-filed by twatch)
- 2026-08-15 — `sockets`: `fp*` return raw `-errno`, and `fpGetErrno` always says 5
- 2026-08-15 — regression: test-asm#src:test/hello.pas red at d2172550a236 (auto-filed by twatch)
- 2026-08-15 — Pascal: `uses` is transitive, so every unit's imports leak to its consumers
- 2026-08-15 — regression: test-core#src:test/test_nilpy_float_pow_oracle.npy red at c9706630b486 (auto-filed by twatch)
- 2026-08-15 — `Sqrt` of infinity answers NaN
- 2026-08-15 — `Text` the widget captures `Text` the file record in an unrelated unit
- 2026-08-15 — Every math domain error is a ZeroDivisionError
- 2026-08-15 — A star that is not the first argument is refused
- 2026-08-15 — `*unpacking` into a callable VALUE
- 2026-08-15 — `class D(B, C):` does not parse
- 2026-08-15 — A nested def's default parameter wins over the caller's argument
- 2026-08-15 — `raise ValueError` — the bare CLASS form — fails at run time
- 2026-08-14 — `{*xs}` skips the set's deduplication
- 2026-08-14 — `progress.sh check` does not notice a Status line that contradicts the folder
- 2026-08-14 — A type name is not a first-class value
- 2026-08-14 — Non-KeyError `e.args` keeps the text, not the argument
- 2026-08-14 — A shadowing constructor: the call target and the argument marshalling disagree
- 2026-08-14 — regression: test-core#src:examples/tk/callbacks.npy red at 410b7a40b516 (auto-filed by twatch)
- 2026-08-14 — In-place append drops the ascii kind flag when the string grows
- 2026-08-14 — Document `__file__` and where a NilPy program's data files live
- 2026-08-14 — `testmgr --pin` escalates its gate on a stale local `tstate/`
- 2026-08-14 — Sweep `test/**` under `--strict-uses` and classify the failures
- 2026-08-14 — Dotted imports never resolve to a source file, only to a shim
- 2026-08-14 — Three network-ish tests flake, and the flakes read as regressions
- 2026-08-14 — `exec()` builtin is a silent no-op; `eval()` is missing
- 2026-08-14 — A `Single` in `array of const` is boxed as 4 bytes and read as 8
- 2026-08-14 — The pyeval fallback still binds a host method's kwargs by POSITION
- 2026-08-14 — `d.update(other, a=1)` — a positional argument before the keyword run
- 2026-08-14 — `cstring_batch`'s gcc oracle does not build, and the recipe reports it as a pxx diff
- 2026-08-14 — `repr()` and `type(e).__name__` leak the internal `PyException` name
- 2026-08-14 — `PyException` leaks through `__name__` and `repr()`
- 2026-08-14 — `uses sysutils, pylib` fails to compile; `uses pylib, sysutils` is fine
- 2026-08-14 — `FloatToStr` of a `Single` prints 15 significant digits, not FPC's 10
- 2026-08-14 — `TypeVar(...)` is an undefined variable
- 2026-08-14 — Makefile: parameterize hardcoded /tmp test paths ($(TESTTMP)) — concurrent gates corrupt each other
- 2026-08-14 — An annotation NilPy cannot interpret refuses the whole program
- 2026-08-14 — Builtin surface gaps found by the 2026-08-12 sweep
- 2026-08-14 — NilPy corpus: uforth — a real Python Forth system as Track N's forcing target
- 2026-08-14 — `Floor` of an out-of-range double returns 0 instead of raising
- 2026-08-14 — Small builtin-surface gaps from the 2026-08-13 sweep
- 2026-08-14 — `test_asm_avx` gates on AVX but executes an AVX2 instruction
- 2026-08-14 — `MEM_FLOOR` is absolute, so a small box can never admit any job at all
- 2026-08-14 — `sep.join(str)` dereferences a string handle as an object
- 2026-08-14 — Document the cross-language name-resolution rules
- 2026-08-14 — regression: test-asm#src:test/test_asm_avx.pas red at 05f21c126295 (auto-filed by twatch)
- 2026-08-14 — One `Exception`, declared once, re-exported by both units
- 2026-08-14 — regression: test-core#src:test/test_managed_block_meta.pas red at 86da0606d916 (auto-filed by twatch)
- 2026-08-14 — `__file__` and `sys.executable` from the resolved executable path
- 2026-08-14 — `TStringList` lookups use three different comparisons, two wrong
- 2026-08-14 — `StrToFloat` returns 0 for garbage, and rejects trailing whitespace
- 2026-08-14 — pyeval: a nested `def` passed to a host method, called back later (closure-as-native-word)
- 2026-08-14 — `FormatDateTime` emits `/` and `:` literally instead of the separators
- 2026-08-14 — NilPy builtin-name intercepts fire inside Pascal RTL units
- 2026-08-14 — `d.update(a=1, b=2)` segfaults — the method half of keywords-are-KEYS
- 2026-08-14 — Inline asm cannot express float or vector code (no xmm operands, no packed SSE, no VEX, no cpuid)
- 2026-08-14 — `--threadsafe` segfaults on every NilPy program
- 2026-08-14 — Document the Variant conversion rules, and fix the wrong note about them
- 2026-08-14 — `gate.sh` self-host reads the live `compiler/pascal26`, so a concurrent build flakes it
- 2026-08-14 — `e.args` is missing on exceptions
- 2026-08-14 — A user `def open()` is silently ignored
- 2026-08-14 — `lib_platform_esp` uses fd 0 as a socket, and `lib_sockets` binds a fixed port
- 2026-08-14 — `import string` in a .npy resolves to crtl's `string.h`
- 2026-08-14 — Starred and NESTED unpacking targets
- 2026-08-14 — NilPy `str` counts characters, not bytes (phase 2)
- 2026-08-14 — `StrToTime` raises the wrong class, and rejects milliseconds
- 2026-08-13 — The FPC seed canary is 11 seconds and lives where nobody looks
- 2026-08-13 — Assigning to an attribute of a list element does not parse
- 2026-08-13 — Variant->Int64 and Variant->Char conversions diverge from FPC in two rows
- 2026-08-13 — NilPy `break` / `continue`
- 2026-08-13 — An attribute off a subscript of a call result yields the variant TAG
- 2026-08-13 — `dict.update()` through a VARIANT receiver picks the TPyList overload and segfaults
- 2026-08-13 — `frozenset(...)`
- 2026-08-13 — Tuple assignment to SUBSCRIPT targets does not parse
- 2026-08-13 — A list rebound with `+` loses its value when returned
- 2026-08-13 — Two-argument `round()` of an int returns a float
- 2026-08-13 — Exception `repr()` is the default object repr (KeyError's message: FIXED 2026-08-09)
- 2026-08-13 — `testmgr --pin` gates with the FULL tier by default
- 2026-08-13 — pasmith: multi-unit programs
- 2026-08-13 — regression: test-arm32#src:examples/net/httpdemo.pas red at be7f80936b0c (auto-filed by twatch)
- 2026-08-13 — regression: test-core#src:test/test_uses_order_pylib_exception_a.pas red at 1df75aad5458 (auto-filed by twatch)
- 2026-08-13 — `set.update()` is refused — only the `|=` spelling reaches setupdate
- 2026-08-13 — `raise KeyError(42)` segfaults
- 2026-08-13 — `skip` is published as `pass`, so green does not mean "ran"
- 2026-08-13 — `len()` of a string method on `f.read()` answers zero
- 2026-08-13 — Float formatting manufactures ties by scaling
- 2026-08-13 — One value, two spellings, two numbers
- 2026-08-13 — A def-returned `None` stops being None once it crosses into a variant slot
- 2026-08-13 — A tuple compares equal to a list
- 2026-08-13 — regression: test-i386#src:examples/net/httpdemo.pas red at be7f80936b0c (auto-filed by twatch)
- 2026-08-13 — regression: test-nilpy#src:test/test_nilpy_sqlite_crud.npy red at 67015a8cf7d8 (auto-filed by twatch)
- 2026-08-13 — Variant->string drops the boolean tag (empty string, silently)
- 2026-08-13 — regression: test-core#src:test/test_nilpy_c_define_const.npy red at 67015a8cf7d8 (auto-filed by twatch)
- 2026-08-13 — nilpy: `f(None)` where the parameter is `Optional[str]`
- 2026-08-13 — A filter BETWEEN two `for` clauses is not supported
- 2026-08-13 — Blocking C-header imports also blocked the four tests that exist to prove they work
- 2026-08-13 — `self.<class attribute>` in an INHERITED method reads the base's value
- 2026-08-13 — testmgr --pin force-kills its own parent, so it can never pin
- 2026-08-13 — Adjacent string literals concatenate in some positions and corrupt in others
- 2026-08-13 — An inline multi-entry dict literal passed as an argument loses its values
- 2026-08-13 — A second `for` clause fails when the FIRST iterable is a `range()`
- 2026-08-13 — `est_mem` is a guess, and the one number we checked was 8x wrong
- 2026-08-13 — Per-invocation temp namespace for the make test recipes
- 2026-08-13 — `input` has TWO lowerings in parser.inc and one silently discards the prompt
- 2026-08-13 — csmith seed 79: checksum disagrees with the gcc oracle
- 2026-08-13 — pydiff's CPython arm fails on a relative path, and it looks like a real DIFF
- 2026-08-13 — A constructor declaring `**kw` still rejects an unmatched keyword
- 2026-08-13 — A def returning a pre-created global has no usable return type
- 2026-08-13 — `map(obj.method, xs)` segfaults
- 2026-08-13 — Drop the stale `known` tags on the string.h and _Bool probes
- 2026-08-13 — `min(xs, key=f)` picks the numeric overload when the key is in a variable
- 2026-08-13 — Float exception mask control (SetExceptionMask-style, FPC emulation opt-in)
- 2026-08-13 — `map(lambda ...)` is unimplemented and `filter` does not exist
- 2026-08-13 — `**kwargs` and `*`-unpack at a CONSTRUCTION are refused
- 2026-08-13 — `getattr` / `hasattr` with a COMPUTED attribute name
- 2026-08-13 — A `set` needs its own runtime tag — two divergences from `list` share this root cause
- 2026-08-13 — The truth-teller shipped; the megaphone was never wired
- 2026-08-13 — A typecast of a Variant reinterprets the record instead of converting
- 2026-08-13 — regression: test-nilpy#src:test/test_uses_order_pylib_exception_a.pas red at be7f80936b0c (auto-filed by twatch)
- 2026-08-13 — nilpy: `*args` / `**kwargs` parameters
- 2026-08-13 — regression: test-core#src:test/test_nilpy_c_pointer.npy red at 67015a8cf7d8 (auto-filed by twatch)
- 2026-08-13 — Dataclass field defaults cannot be expressions
- 2026-08-13 — A selector on a call returning a locally-built dict does not parse
- 2026-08-13 — T reports `test_nilpy_str_isnumeric_istitle` RED at full tier; not reproducible locally
- 2026-08-12 — optdiff skips the tests whose compile flags live in the Makefile
- 2026-08-12 — abs() keeps the sign of negative zero, and min/max break ties backwards
- 2026-08-12 — `str()` of a plain instance prints the handle; a class-typed `None` prints 0
- 2026-08-12 — `range` as a value — a lazy SEQUENCE, not a cursor
- 2026-08-12 — sum() of floats has no compensated summation
- 2026-08-12 — `del d[k]` on a VARIANT receiver is refused
- 2026-08-12 — A module name reassigned from a FIELD inside a block segfaults
- 2026-08-12 — A def returning a big-int EXPRESSION directly answers zero
- 2026-08-12 — `__repr__` returning a bare string field comes back empty
- 2026-08-12 — A field assigned from a module global has no inferable type
- 2026-08-12 — An override returning a different type than the base reads float BITS as an int
- 2026-08-12 — `type()` of an arbitrary-precision int answers `<unknown>`
- 2026-08-12 — Float formatting rounds ties toward zero, not to even
- 2026-08-12 — A class attribute read through a class REFERENCE reads garbage
- 2026-08-12 — A Variant argument binds the first COMPATIBLE overload, not the Variant one
- 2026-08-12 — UMBRELLA: real lazy iterator objects for map / filter / enumerate / zip / reversed
- 2026-08-12 — testmgr should own pinning, and pinning must be interruptible
- 2026-08-12 — A def returning `obj.field` is typed as the receiver's CLASS
- 2026-08-11 — `write(v:w:d)`: the fraction past ~16 digits is an approximation, padded with zeros
- 2026-08-11 — NilPy: `Text` as an attribute or base class binds the RTL file record
- 2026-08-11 — Calling a non-callable SEGFAULTS instead of raising TypeError
- 2026-08-11 — A callable value needs its own variant tag
- 2026-08-11 — A user `__hash__` is ignored for dict keys
- 2026-08-11 — Pinning is fast and unverified; Track T owns verification
- 2026-08-11 — An Integer argument binds the fixed-ARRAY overload, not the Integer one
- 2026-08-11 — text-mode `read(n)` returns bytes, not str
- 2026-08-11 — A metaclass returned from a FUNCTION is not a receiver
- 2026-08-11 — A parenthesised callee on an assignment RHS drops its arguments
- 2026-08-11 — `P;` fails when every parameter is defaulted
- 2026-08-11 — `shr` on a 32-bit operand shifts at 32 bits; FPC promotes to 64 first
- 2026-08-11 — A lowercase call name is hijacked by a case-matching class
- 2026-08-11 — A fixed parameter before `*args` segfaults
- 2026-08-11 — `int.bit_length()` is not implemented
- 2026-08-11 — Calling a call's result: refused in a block, dropped when statically typed
- 2026-08-11 — `for x in [...]` and `for c in 'literal'` are refused
- 2026-08-11 — A VARIABLE field width is refused for strings/chars, and needs an RTL unit at all
- 2026-08-11 — A bare attribute on a call result is refused
- 2026-08-11 — Multi-parameter lambdas are still interpreted
- 2026-08-11 — The full tier no longer fits its deadline, so it is truncated every run
- 2026-08-11 — pyeval's runtime errors `writeln` + `Halt` instead of raising
- 2026-08-11 — `list.sort(key=...)` (the in-place METHOD) is missing — `sorted()` works fine
- 2026-08-11 — riscv32 / xtensa: no atomic node in IR codegen
- 2026-08-11 — A class used as a VALUE: SEGFAULT from a container, compile errors from a name
- 2026-08-11 — i386: the C entry stub hands `main` argc and argv in the wrong slots
- 2026-08-11 — A method call on a callable value's result is refused
- 2026-08-11 — The exec() `__body__` trampoline is boxed as an OBJECT
- 2026-08-11 — `__eq__` is skipped as soon as one operand is a variant
- 2026-08-11 — a two-deep method chain on `open()`'s result does not parse
- 2026-08-11 — `obj(...)` does not dispatch a user `__call__`
- 2026-08-11 — A fixed-array function result faults on i386 and arm32
- 2026-08-11 — A name bound in a block by a METHOD CALL is "undefined" in a later assignment
- 2026-08-11 — A lambda with FOUR or more parameters segfaults when called
- 2026-08-11 — `x is None` answers wrong whenever `and` / `or` / `else` follows it
- 2026-08-11 — A typed const array of `string[N]` is never initialised — silently
- 2026-08-11 — A fixed-array call result is refused as a `const`/by-ref argument
- 2026-08-11 — NilPy: dunders don't dispatch when the instance is reached through a container
- 2026-08-11 — Shard `test-uforth`'s ANS suite per word set
- 2026-08-11 — An Integer-valued BINOP argument binds the Double overload, not the Integer one
- 2026-08-11 — Raising an exception held in a variant segfaults
- 2026-08-11 — The mismatch warning fires even when crtl owns the symbol
- 2026-08-11 — `hash(x)` is not implemented
- 2026-08-10 — A lifted lambda does not enforce arity — wrong answer, or a segfault
- 2026-08-10 — Non-constant parameter defaults silently become `None`
- 2026-08-10 — `open()` returns two different classes by mode, so reusing the name breaks
- 2026-08-10 — A class used as a VALUE: `cls = A; cls(3)`
- 2026-08-10 — crtl's auto-pull silently no-ops when pxxcio's `uses` clause has two units
- 2026-08-10 — Assignment through a pointer returned by a function call is silently dropped
- 2026-08-10 — Every `lambda` is interpreted, not compiled
- 2026-08-10 — A mixed-type record operator (`TVec * Integer`) fails to parse — and hid a silent wrong value
- 2026-08-10 — A metaclass-typed FIELD is not recognised as a receiver
- 2026-08-10 — An integer default on a string parameter compiles, then segfaults
- 2026-08-10 — `f.write(x)` picks the BYTES overload whenever x is not statically a str
- 2026-08-10 — a `.py` module shipped in `lib/**` cannot be imported
- 2026-08-10 — `--strict-fpc`: a narrow `shr` by zero loses the operand's sign
- 2026-08-10 — The C entry stub must run the finalizers, or `atexit` cannot exist
- 2026-08-10 — crtl's integral-part math loses the sign of zero, and gives up past 2^63
- 2026-08-10 — A closure over a loop variable captures by value, not by variable
- 2026-08-10 — `d: Double = 2.5` fails to parse in a parameter list
- 2026-08-10 — Indexing a function CALL RESULT: `.field` after `[i]` is silently dropped
- 2026-08-10 — crtl: the last declared-but-unimplemented functions
- 2026-08-10 — x86-64 `write(c:width)` drops the field width on a Char
- 2026-08-10 — tkinter façade: a callable option that receives Tk's OWN arguments
- 2026-08-10 — A `string[N]` field in a record's VARIANT part is 8 bytes and reads as an address
- 2026-08-10 — `uses a, b` — pxx picks the first unit's routine, FPC picks the last
- 2026-08-10 — A lifted lambda could not capture a managed string
- 2026-08-10 — `-O3` diverges from the baseline on two cmath tests
- 2026-08-10 — `sizeof` a file-scope `double[]` sized by its initializer answers one element
- 2026-08-10 — Stop the compiler from authoring crtl's contents
- 2026-08-10 — An N-D array function RESULT indexes the wrong slot inside the callee
- 2026-08-10 — `obj in [list of objects]` ignores `__eq__` and compares identity
- 2026-08-10 — `(void*)` on a float-element array yields a wrong address
- 2026-08-10 — A Pascal RTL name can hijack a libc function in every C program
- 2026-08-10 — A constructor's defaulted `Variant` parameter smashes the stack
- 2026-08-09 — `f(1, b=7)` rejected when the def also has `*rest` / `**kw`
- 2026-08-09 — A module name rebound INSIDE a block reads as garbage
- 2026-08-09 — Unary minus binds looser than `and`/`shr` — `-x and 12` was `-(x and 12)`
- 2026-08-09 — `0 ** 0.5` HUNG — PyMathLn never terminates for a non-positive argument
- 2026-08-09 — regression: test-nilpy#src:test/test_nilpy_str_isnumeric_istitle.npy red at 0d6de0cbeae1 (auto-filed by twatch)
- 2026-08-09 — The threading surface is not where FPC code looks for it
- 2026-08-09 — A subscript READ on a class with no `__getitem__` yields a silent wrong value
- 2026-08-09 — A user `__str__` on an Exception subclass is ignored
- 2026-08-09 — `PyNoSetitemError` does not name the class
- 2026-08-09 — A set comprehension over `range()` does not deduplicate
- 2026-08-09 — A tuple-unpacked name is "undefined" in a later assignment's RHS
- 2026-08-09 — `TextReadChar` with pushback, so `read(f, c)` means what FPC means
- 2026-08-09 — A scalar-then-class rebind INSIDE a nested block loses the widening entirely
- 2026-08-09 — `repr()` of a VARIANT holding a user instance answered ''
- 2026-08-09 — `Low`/`High` of a named SUBRANGE answer the base type's bounds
- 2026-08-09 — `return` inside a `with` does not run `__exit__`
- 2026-08-09 — regression: test-core#src:test/csystem_libs_granular_libc_b113.c red at b39ac8f02003 (auto-filed by twatch)
- 2026-08-09 — `dict.update(<variant>)` SEGFAULTED
- 2026-08-09 — A method call or subscript on a parenthesised expression fails (or crashes)
- 2026-08-09 — regression: test-core#src:test/cmath_trig_family_b385.c red at 93d6232f05d1 (auto-filed by twatch)
- 2026-08-09 — An `except ... as e` binder leaks and collides with a later ordinary `e`
- 2026-08-09 — `s.split(None)` does not split — the whole string comes back as one field
- 2026-08-09 — `startswith`/`endswith` with a TUPLE of prefixes silently answered False
- 2026-08-09 — C corpus: bring up tcc (TinyCC) as a real-world multi-file C target
- 2026-08-09 — NilPy arithmetic/ordering dunders — umbrella
- 2026-08-09 — C corpus step 2: zlib v1.3.1 bring-up
- 2026-08-09 — `math` surface gaps — 16 names missing, all LOUD
- 2026-08-09 — regression: test-nilpy#src:test/test_nilpy_delitem_dunder.npy red at 954727cee668 (auto-filed by twatch)
- 2026-08-09 — Carve NilPy's selector/subscript parsing out of `parser.inc`
- 2026-08-09 — `obj[k] = v` does not compile when the class has `__setitem__` but no `__getitem__`
- 2026-08-09 — A name assigned from a CALL, then reused as a for-loop target, SEGFAULTS
- 2026-08-09 — A user method named `find`/`index` raises AttributeError when the receiver has no static class
- 2026-08-09 — A MULTI-NAME for target at module scope reuses an existing name's slot
- 2026-08-09 — Arithmetic dunders (`__add__`, `__sub__`, …) — full protocol
- 2026-08-09 — A lambda whose body is another lambda dies at RUN time
- 2026-08-09 — A multi-argument exception constructor SEGFAULTED
- 2026-08-09 — `max()` of a VARIANT holding a list read it as a string
- 2026-08-09 — `for i, v in enumerate(xs, 1):` — the start offset works everywhere EXCEPT a for header
- 2026-08-09 — Revert the `__pxx_clock` Int64-cast workaround
- 2026-08-09 — A set- or fixed-array-returning function answers an empty/partial value
- 2026-08-09 — @dataclass: a `str` field's DEFAULT is silently dropped (becomes '')
- 2026-08-09 — TStrings.CommaText / DelimitedText are missing
- 2026-08-09 — `zip()` inside a comprehension fails to parse
- 2026-08-09 — An early `Exit` makes later target defines dead on x86-64
- 2026-08-09 — NilPy: a generator expression as a call argument
- 2026-08-09 — `a |= <set>` silently does nothing (and mixing it with `+=` segfaults)
- 2026-08-09 — A by-value `set` or `string[N]` parameter aliases the caller's variable
- 2026-08-09 — `"%(k)s" % {...}` — the mapping form of %-formatting
- 2026-08-09 — `%-*s` — dynamic width from an argument — was unsupported
- 2026-08-09 — `with A() as a, B() as b:` — only one context manager per `with`
- 2026-08-09 — NEW-RED: `--system-libs=c` now links libm — the Floor/Ceil result-type change
- 2026-08-09 — Missing FPC surface found by the differential probe (Eoln, TSeekOrigin, Sorted, IncMonth)
- 2026-08-09 — Calling an instance whose NAME matches a class runs the CONSTRUCTOR
- 2026-08-09 — A `string[N]` TYPE ALIAS loses its capacity, so nothing truncates
- 2026-08-09 — Rebinding a module global from a scalar to a class kills dunder dispatch
- 2026-08-09 — `Log10` is inexact for powers of ten — `int(log10(n))` is off by one
- 2026-08-09 — A variant argument binds a CLASS overload and is unwrapped unchecked
- 2026-08-09 — Subscripting a CALL RESULT: a string ignores the index, a chain drops the second
- 2026-08-09 — `{$IFDEF PXX_THREADSAFE}` — one define meaning "threads are enabled"
- 2026-08-09 — The futex helpers are trapped behind `__pxxclone`
- 2026-08-09 — `lib/rtl` math is a ulp off, and the good implementation already exists in `lib/crtl`
- 2026-08-09 — `del obj[k]` does not dispatch `__delitem__`
- 2026-08-09 — Track W (website) — filed-vs-solved ticket flow graphs, per track
- 2026-08-09 — Canonical domain in the docs
- 2026-08-09 — `pylib.pas` calls eight helpers before defining them, with no forward declaration
- 2026-08-09 — `return None` beside a container return hands back an unusable nil handle
- 2026-08-09 — A reversed list repeat returned from a def comes back as an integer
- 2026-08-09 — A lambda whose body is a CALL returning a container yields None
- 2026-08-09 — Unsupported protocols: `repr()`, `__iter__`/`__next__`, `__getattr__`, `__delitem__`, `__hash__`
- 2026-08-09 — An augmented subscript evaluates its index twice
- 2026-08-09 — `bytearray` and `bytes` are the same type — repr, type name and mutability
- 2026-08-09 — A zip loop target inside a def binds the module global of that name
- 2026-08-09 — regression: test-nilpy#src:test/test_nilpy_from_import_as_alias.npy red at 954727cee668 (auto-filed by twatch)
- 2026-08-09 — ABI oracle: backends consult it, and stop reading Syms[]
- 2026-08-09 — NilPy: dispatch a method call on a VARIANT receiver at RUNTIME
- 2026-08-08 — `tools/gate.sh` fixedpoint does not iterate — false RED on any codegen change
- 2026-08-08 — A PYTHON-bodied Forth word is called with one argument too many
- 2026-08-08 — pyeval refuses a host method whose params mix variants and scalars
- 2026-08-08 — A closure in a Callable field jumps through the variant tag
- 2026-08-08 — An empty range is unbisectable, and the two-phase watcher produces them
- 2026-08-08 — A dynamic receiver's field call casts to the wrong class
- 2026-08-08 — `x in <list>` ignores `__eq__` — membership by handle, not by value
- 2026-08-08 — regression: test-i386#src:test/test_dynarray_field.pas red at 899e51cda3ba (auto-filed by twatch)
- 2026-08-08 — A @property setter is skipped when the receiver is dynamically typed
- 2026-08-08 — regression: test-nilpy#src:test/test_nilpy_function_values.npy red at 082e5175beba (auto-filed by twatch)
- 2026-08-08 — Same-kind undefined operators still compute silently (`"ab" - "ab"` → 0)
- 2026-08-08 — uforth's ANS word-set suite: 13 of 13 identical, and gated
- 2026-08-08 — Enrol `test-uforth` in the tiers — it is currently gated by nobody
- 2026-08-08 — regression: test-uforth#00 red at 378295f7c218 (auto-filed by twatch)
- 2026-08-08 — A self-healed red leaves a permanent prio-70 stub at the head of the ranked queue
- 2026-08-08 — `gate.sh quick` reports RED for a stale pin, not a real fixedpoint failure
- 2026-08-08 — A plain-class Callable field is unreachable through a dynamic receiver
- 2026-08-08 — `list(<bytes>)` is empty
- 2026-08-08 — `.(` prints nothing — uforth's driver suite, 8 of 11 identical
- 2026-08-08 — A user class instance boxed in a list/dict prints as empty, losing `__repr__`/`__str__`
- 2026-08-08 — Track letter W is claimed by TWO lanes — Windows and Website
- 2026-08-08 — `list.sort()` on user objects with `__lt__` raises a runtime TypeError instead of using it
- 2026-08-08 — A local reassigned across two classes keeps one static class
- 2026-08-08 — regression: test-nilpy#src:test/test_nilpy_for_two_names_over_a_variant.npy red at b51f4eeffbf9 (auto-filed by twatch)
- 2026-08-08 — `pop(index)` destroys the element that shifts down — in uforth, not yet in isolation
- 2026-08-08 — uforth's FILE word set: the wrong `INCLUDE`, and a word missing in an included file
- 2026-08-08 — A borrowed object returned out of a function is over-released
- 2026-08-08 — `set()` is a list wearing the name
- 2026-08-08 — A callable in a Callable field is freed while the field still holds it
- 2026-08-08 — uforth compiles, boots, and stalls loading STD.UFO
- 2026-08-07 — `Base.__init__(self, n)` is rejected: class method not found
- 2026-08-07 — `.to_bytes()` on a variant receiver does not compile
- 2026-08-07 — An escaped `nonlocal` cell is not shared with the enclosing frame
- 2026-08-07 — A user `def` does not shadow a pylib builtin of the same name
- 2026-08-07 — def/class body scans run on when no `tkIndent` is found
- 2026-08-07 — `int()` of a decimal string wider than 64 bits narrows
- 2026-08-07 — A conditional expression loses None identity
- 2026-08-07 — A builtin with no pylib proc is shadowed from the top of the module
- 2026-08-07 — An open-array VALUE parameter aliases the caller's array instead of copying it
- 2026-08-07 — `input()` is shadowed by Pascal's standard `Input` text file
- 2026-08-07 — regression: test-core#src:test/test_dynarray_params.pas red at 34670fe9b872 (auto-filed by twatch)
- 2026-08-07 — Calling through a dataclass's `Callable` field segfaults
- 2026-08-07 — Managed-block header: add the kind word (phase 1, layout only)
- 2026-08-07 — `print(f)` on a function value prints None (or nothing) instead of a repr
- 2026-08-07 — riscv32: an element write through a NESTED dynamic array segfaults
- 2026-08-07 — A global named like another class's ctor parameter breaks a bound-method value
- 2026-08-07 — An overridden class attribute reads the base's value through an instance
- 2026-08-07 — A Callable field typed only by a ctor parameter carries no signature
- 2026-08-07 — `**=` to a SUBSCRIPT target does not parse
- 2026-08-07 — The one-line class body restraint is no longer enforced, and its comments now lie
- 2026-08-07 — The self-host seed carries no versioned RTL
- 2026-08-07 — A lambda call is not arity-checked — wrong values, no diagnostic
- 2026-08-07 — A bound method of a temporary receiver segfaults
- 2026-08-07 — A tuple returned from a lambda becomes a list
- 2026-08-07 — A def named `float` or `bool` is never called
- 2026-08-07 — Every escaping closure leaks its bound-fn object — 320k closures cost 125 MB
- 2026-08-07 — plexus publishes false REDs, and the renamed `xeon` host holds a regression forever
- 2026-08-07 — `--threadsafe` + `-dPXX_HEAP_DEBUG` hangs at runtime
- 2026-08-07 — `for k, v in <variant>` assumes a dict, so a list of pairs raises
- 2026-08-07 — A lambda call with the wrong argument count does not raise
- 2026-08-07 — bug(N): `obj /= n` and `obj **= n` on a class instance skip the dunder and raise "expected a number, got object"
- 2026-08-07 — `hasattr` on a variant receiver always answers False
- 2026-08-07 — `int()` of a variant-held bignum raises instead of being the identity
- 2026-08-07 — A bound method cannot be passed through a `Callable[...]` parameter
- 2026-08-07 — An int-typed local accumulating a float out of a list crashes with 219
- 2026-08-06 — A counted-loop counter is 32-bit, so a large range never terminates
- 2026-08-06 — A method call in a `while` condition is evaluated once, before the loop
- 2026-08-06 — `Copy(a)` on a dynamic array does not parse
- 2026-08-06 — regression: test-nilpy#src:test/test_cpyext_containers.npy red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-06 — NilPy augmented assignment silently truncates to 32 bits
- 2026-08-06 — `list`, `tuple` and `set` are indistinguishable to `isinstance`
- 2026-08-06 — regression: test-nilpy#src:test/test_cpyext_args_errors.npy red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-06 — A nested comprehension over range() runs once, and every row is the same list
- 2026-08-06 — A nested def's own local is recorded as a capture when a sibling shares the name
- 2026-08-06 — `for` rejects an inline suite that `if` and `while` accept
- 2026-08-06 — regression: test-core#src:test/test_nilpy_augmented_assign_class_dunder.npy red at e8450c58d67e (auto-filed by twatch)
- 2026-08-06 — regression: test-nilpy#src:test/test_nilpy_dotted_package_import.npy red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-06 — regression: test-nilpy#src:test/test_nilpy_pyexpr_semantics.npy red at 9294bce2c800 (auto-filed by twatch)
- 2026-08-06 — x86-64: dynamic-array assignment copies instead of aliasing
- 2026-08-06 — regression: test-nilpy#src:test/test_cpyext_markupsafe.npy red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-06 — `Copy` rejects any dynamic-array expression that is not a bare name
- 2026-08-06 — A range counter survives the loop with the wrong value
- 2026-08-06 — A missing source file compiled to an empty program, silently
- 2026-08-06 — `write(v:w:d)` prints false digits past 1e22
- 2026-08-06 — regression: test-nilpy#src:test/test_nilpy_qualifier_vs_cproc.npy red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-06 — Warn when a routine directive is accepted but cannot be honored
- 2026-08-06 — `//`, `%`, ordering and `float()` narrow a Variant-held bignum
- 2026-08-06 — A `nonlocal` capture in an ESCAPING closure fails to parse at the call site
- 2026-08-06 — regression: test-nilpy#src:test/test_cpyext_hello.npy red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-06 — regression: test-nilpy#src:test/test_nilpy_augmented_assign_class_dunder.npy red at 9294bce2c800 (auto-filed by twatch)
- 2026-08-06 — regression: test-nilpy#src:test/test_nilpy_list_mutators_return_none.npy red at 9294bce2c800 (auto-filed by twatch)
- 2026-08-06 — An augmented assign through a variant subscript is computed and dropped
- 2026-08-06 — regression: test-nilpy#src:test/test_cpyext_cython.npy red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-06 — regression: test-core#src:test/test_exception_unhandled.pas@1 red at 899e51cda3ba (auto-filed by twatch)
- 2026-08-06 — regression CASCADE: 15 jobs newly red at aba953cae031 (auto-filed by twatch)
- 2026-08-06 — Sqrt (and friends) need `uses math`, where FPC has them as system intrinsics
- 2026-08-06 — regression: test-core#src:test/test_nested_cow.pas red at 899e51cda3ba (auto-filed by twatch)
- 2026-08-06 — `PyErr_Format` prints CPython's `%U` / `%S` / `%R` specifiers literally
- 2026-08-06 — pxxpdf — pxx pdfgen-backed, reportlab-compatible PDF library
- 2026-08-06 — `Format('%.Nf')` scales through Int64 and breaks at ordinary magnitudes
- 2026-08-05 — x86-64: `writeln(d:w:n)` saturates at Int64 for large values
- 2026-08-05 — `tools/gcc_diff_probe.sh` — gcc-oracle differential for crtl
- 2026-08-05 — A function returning `PromoInt` crashes
- 2026-08-05 — `sqrt`, `sin`, `cos`, `exp`, `ln`, `arctan` are not available without `uses math`
- 2026-08-05 — `<pthread.h>` without `--threadsafe` builds clean, then dies at load
- 2026-08-05 — A duplicate definition is silently accepted, and binding is positional
- 2026-08-05 — `<wchar.h>` / `<wctype.h>` were declarations with no implementation
- 2026-08-05 — regression: test-core#src:test/test_relpath_uses.pas red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-05 — `.Free` / `.Destroy` off anything but a simple variable
- 2026-08-05 — The member check is missing on the statement-lvalue field path
- 2026-08-05 — arm32 / riscv32: whole dynamic-array assignment has no backend store arm
- 2026-08-05 — regression: test-core#src:test/test_c_preprocess.pas@1 red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-05 — Whole-array assignment of a static array with managed elements silently loses the data
- 2026-08-05 — `InterLocked*` should be reachable with no `uses`, like FPC's
- 2026-08-05 — regression: test-core#src:test/test_c_macro_soup.pas red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-05 — `read`, `write`, `close`, `lseek` were declared and never implemented
- 2026-08-05 — C: `(double)` of a 64-bit integer truncates to 32 bits on i386 and arm32
- 2026-08-05 — x86-64: `d := q` for a QWord above 2^63 produces half the value
- 2026-08-05 — regression: test-core#src:test/test_nilpy_qualifier_vs_cproc.npy red at 34c41bde6fd6 (auto-filed by twatch)
- 2026-08-05 — `uses SysUtils` silently no-ops when the RTL is not reachable
- 2026-08-05 — `writeln` of a Double is not correctly rounded (and `Str` disagrees with it)
- 2026-08-05 — regression: test-core#src:test/csocket_loopback_b88.c red at 330f62af78d0 (auto-filed by twatch)
- 2026-08-05 — regression: test-core#src:test/test_float_write.pas@1 red at ad8e212cf739 (auto-filed by twatch)
- 2026-08-05 — A member read off a CONSTRUCTOR result silently yields garbage
- 2026-08-05 — Indexing a getter-backed string property fails to lower (IR_UNSUPPORTED)
- 2026-08-05 — A `PromoInt` parameter on a 32-bit target
- 2026-08-05 — `sscanf` had no `%[...]` and no `%n`
- 2026-08-05 — A spurious `DT_NEEDED libc.so.6` is emitted for a binary that imports nothing
- 2026-08-05 — riscv32: `SetLength` on a string array element loses the length
- 2026-08-05 — 32-bit: a virtual method with a 64-bit parameter **and** a 64-bit result is miscompiled
- 2026-08-05 — aarch64: `writeln(d:0:1)` of a large Double prints wrong digits
- 2026-08-05 — `read(f, c)` into a Char from a Text file segfaults
- 2026-08-05 — i386: an Int64 argument's high half is left uninitialized (silent garbage)
- 2026-08-05 — Pointer difference as a variadic argument pushes 8 bytes on 32-bit
- 2026-08-05 — Conversion to `_Bool` truncates instead of normalising to 0/1
- 2026-08-05 — regression: test-core#src:test/test_fortran_skeleton.f90 red at ad8e212cf739 (auto-filed by twatch)
- 2026-08-05 — A `procedure` method used as a value compiles and produces garbage
- 2026-08-05 — write/writeln to a Text FILE rejects a Char (stdout accepts one)
- 2026-08-05 — crtl: `asctime` / `ctime` / `timegm`
- 2026-08-05 — regression: test-core#src:test/test_stmt_call_result_selector_b318.pas red at 33cd0117f9f9 (auto-filed by twatch)
- 2026-08-05 — arm32: a write-after-free segfaults four lib tests (reduces to two calls)
- 2026-08-05 — A program's own function does not shadow a used unit's — the unit wins
- 2026-08-05 — A `PromoInt` parameter takes only a variable
- 2026-08-05 — `TCriticalSection` was a no-op stub
- 2026-08-05 — regression: test-core#src:test/test_algol_skeleton.alg red at ad8e212cf739 (auto-filed by twatch)
- 2026-08-05 — `Assert()` halts instead of raising `EAssertionFailed`
- 2026-08-05 — regression: test-core#src:test/test_syncobjs.pas red at 9df868bf3680 (auto-filed by twatch)
- 2026-08-05 — aarch64: `signed < unsigned-narrow` compares as unsigned
- 2026-08-05 — `<` `>` `<=` `>=` between a string and a Char compare LENGTHS, not content
- 2026-08-05 — aarch64's float emitters were not covered by the non-finite fix
- 2026-08-05 — The class/parameter name collision still crashes on the FIELD path
- 2026-08-05 — aarch64: `writeln(d:width:decimals)` drops the width
- 2026-08-05 — Local static array of AnsiString leaks every element at scope exit
- 2026-08-05 — Unify the 32-bit call argument marshalling
- 2026-08-05 — crtl syscall veneers returned the raw negative errno
- 2026-08-05 — `Int64(x)` of a `NativeInt` does not extend on 32-bit targets
- 2026-08-05 — regression: test-core#src:test/test_writeln_nonfinite_float.pas red at ad8e212cf739 (auto-filed by twatch)
- 2026-08-05 — `#include <string.h>` compiles `stdlib.c` twice
- 2026-08-05 — TStringList: `Sorted`, `Duplicates`, `CaseSensitive`, `Find`
- 2026-08-05 — `printf("%a")` crashed on every 32-bit target, and three things around it
- 2026-08-04 — SysUtils.Format parsed printf's spec, not Delphi's
- 2026-08-04 — regression: test-core#src:test/test_nilpy_re.npy red at b9e334fbd649 (auto-filed by twatch)
- 2026-08-04 — A restart runs the tested sha's watcher, not the current one
- 2026-08-04 — `PromoInt`: `shr` yields nothing, and a machine-int cast yields the slot address
- 2026-08-04 — TStrings.Text hardcoded CRLF, so SaveToFile wrote DOS line endings on Linux
- 2026-08-04 — The bench phase is the one idle job a push cannot interrupt
- 2026-08-04 — regression: test-c-conformance#shard2/6 red at ff1a30aae401 (auto-filed by twatch)
- 2026-08-04 — `a = b = 5`, `x **= 2`, and `a; b` on one line do not parse
- 2026-08-04 — A nested def capturing `self` returns nothing when a sibling nested def calls it
- 2026-08-04 — `[c for r in rows for c in r]` — a second `for` clause is not supported
- 2026-08-04 — `repr()` and `sum(range(...))` are undefined variables
- 2026-08-04 — `print` stringifies container arguments eagerly
- 2026-08-04 — `O_DIRECTORY` had the x86 value on ARM — directory listing was dead on arm32/aarch64
- 2026-08-04 — `hex` / `bin` / `oct` over an arbitrary-precision int
- 2026-08-04 — `FindProc` name-resolution cannot reach an overload
- 2026-08-04 — Promotion is chosen from the LITERAL's width, so an int that grows past 2^63 wraps silently
- 2026-08-04 — a def's return coerces a float to its inferred int result type
- 2026-08-04 — A class field and a recursive return narrow an arbitrary-precision int
- 2026-08-04 — Too few arguments to a container method compiles, then segfaults
- 2026-08-04 — `x **= n` does not parse
- 2026-08-04 — A dotfile's name was treated as its extension — ChangeFileExt ate the filename
- 2026-08-04 — A ledger entry whose job key vanishes is immortal
- 2026-08-04 — regression: optdiff#shard8/12 red at 28eb1a105ddb (auto-filed by twatch)
- 2026-08-04 — Four integer parsers, four different answers — no radix prefixes, silent overflow
- 2026-08-04 — A user `def` loses to a pylib overload of the same arity — silently
- 2026-08-04 — xeon's red set looks like missing corpora, not a code regression
- 2026-08-04 — Benchmarks need hardware provenance, not just a hostname
- 2026-08-04 — regression: test-core#src:test/test_nilpy_module_first_import.npy red at b9e334fbd649 (auto-filed by twatch)
- 2026-08-04 — `def len(x)` is still ignored when the argument is a container
- 2026-08-04 — NilPy float repr is fixed-precision, not CPython's shortest round-trip
- 2026-08-04 — Three loud gaps found by the CPython differential sweep
- 2026-08-04 — `writeln` of a non-finite Double hangs
- 2026-08-04 — regression: test-nilpy#src:test/test_nilpy_print_arg_eval_order.npy@1 red at 9df2717684a3 (auto-filed by twatch)
- 2026-08-04 — Bench measures whatever the box was doing, and calls the result SLOW
- 2026-08-04 — `pypow_v`'s integer path silently wraps past 64 bits instead of promoting
- 2026-08-04 — Missing surface: step slicing, `list(range(…))`, `pow`, a few str/dict methods
- 2026-08-04 — a lambda over a sibling nested def that captures does not compile
- 2026-08-04 — One-line `def` and `class` bodies do not parse
- 2026-08-04 — The watcher's working tree is NOT current state — read `origin/master`
- 2026-08-04 — `__init__` parameter defaults are ignored
- 2026-08-04 — A parameter or local named like a class is typed as that class
- 2026-08-04 — `Format`'s `%g` and `%e` are not FPC's
- 2026-08-04 — regression: test-core#src:test/test_nilpy_min_max_variadic.npy red at 9305672dbcd5 (auto-filed by twatch)
- 2026-08-04 — nilpy: keyword arguments and overload sets do not mix
- 2026-08-04 — SysUtils.Pos returned 1 for an empty substring
- 2026-08-04 — `list.append`/`extend`/`sort`/`reverse` return the list, not None
- 2026-08-04 — Two methods of one class cannot both have a nested def of the same name
- 2026-08-04 — `abs()` of a negative integer expression returns it unchanged
- 2026-08-04 — `bytearray()` cannot be built from data
- 2026-08-04 — A `PromoInt` parameter cannot be used at all
- 2026-08-04 — A missing `__index__` at a subscript raises IndexError, not TypeError
- 2026-08-04 — regression: test-nilpy#src:test/test_nilpy_class_return.npy red at cd891b44a616 (auto-filed by twatch)
- 2026-08-04 — Enumerate the promo surface by output-diff, not compile-success
- 2026-08-03 — `#if` conditional operator `?:` was never implemented
- 2026-08-03 — regression: test-core#src:test/cgeneric_selection_b209.c red at 42786f141ea7 (auto-filed by twatch)
- 2026-08-03 — A C call binds to a Pascal routine of a DIFFERENT arity, silently
- 2026-08-03 — No C program entry stub for xtensa — no C compiles for that target at all
- 2026-08-03 — The float-literal lexer is not correctly rounded
- 2026-08-03 — `@dataclass` gets no generated `__eq__` — compares by identity instead of fields
- 2026-08-03 — An unknown field on a BUILTIN record was accepted, and corrupted memory
- 2026-08-03 — A retired host's open regression never clears
- 2026-08-03 — `for ... else:` / `while ... else:` do not parse
- 2026-08-03 — `obj += n` on a class instance silently yields 0
- 2026-08-03 — A one-line `def` suite does not parse
- 2026-08-03 — `min(a, b, c)` / `max(a, b, c)` — only the 2-argument and iterable forms exist
- 2026-08-03 — `.debug_line` advances the PC backwards, and the address register wraps
- 2026-08-03 — An integer literal is not typed by its VALUE for overload resolution
- 2026-08-03 — An int prints as `5.0` because the SAME NAME is assigned a float later in the file
- 2026-08-03 — Paramless self-recursion reads own Result silently — no diagnostic
- 2026-08-03 — `#line` unimplemented, and `__LINE__` reads as 0 inside `#if`
- 2026-08-03 — Host-coupled test assertions produce permanent, misleading REDs
- 2026-08-03 — A pxx routine called from C reads 64-bit parameters at the internal positions
- 2026-08-03 — FPC seed drift #4: `EmitAsmX64` called from `symtab.inc`
- 2026-08-03 — A construction on the right of `is` does not parse
- 2026-08-03 — A user class named like a pylib builtin loses to the builtin
- 2026-08-03 — `.5` and `5.` are not accepted as float literals
- 2026-08-03 — Don't auto-file cascade tickets from a host's first run
- 2026-08-03 — The self-host recipe writes the binary in place, then execs it
- 2026-08-03 — Float printing loses the last 1-2 significant digits vs CPython's shortest round-trip repr
- 2026-08-03 — `print(1e-20)` prints `0.0` — NilPy's float repr has no small-magnitude exponential form
- 2026-08-03 — `resolve <slug> <commit>` cites a sha that `sync.sh` then rewrites
- 2026-08-03 — `float(str)` is not correctly rounded
- 2026-08-03 — `def f(a, b=2, *rest)` cannot be called as `f(1)`
- 2026-08-03 — issue: runtime heap grows unbounded in a dynamic/variant-heavy loop (long-running programs OOM)
- 2026-08-03 — `seed-from-stable` silently defeats the self-host rebuild
- 2026-08-03 — `make pxx-debug`: line numbers index the INCLUDE-EXPANDED source
- 2026-08-03 — `C.attr` on a class attribute: "class method not found"
- 2026-08-03 — Watcher and dev session on one box false-RED slow test-core jobs
- 2026-08-03 — `__x86_64__` is predefined on every target, and no other arch macro ever is
- 2026-08-03 — Float printing is not Python's `repr` — six distinct divergences
- 2026-08-03 — Plain `char` lost its type IDENTITY, not just its signedness
- 2026-08-03 — In a mixed Pascal+C build, a C call binds to a same-named Pascal routine at the wrong arity
- 2026-08-03 — regression: test-core#src:test/cstatic_init_cast.c red at 6995a1a0d618 (auto-filed by twatch)
- 2026-08-03 — `sizeof(p->arr)` returns the POINTER size, not the array size — silent buffer overflow
- 2026-08-03 — A cast in a static aggregate initializer folds to 0
- 2026-08-03 — `#error` compiles clean
- 2026-08-03 — an undeclared type name in a cast is treated as `0`
- 2026-08-03 — `sizeof a[0]` is a parse error — the array-length idiom does not compile
- 2026-08-03 — `WriteLn(x:0:17)` prints garbage
- 2026-08-03 — `cstatic_init_cast.c` encodes an expectation that was reverted an hour later
- 2026-08-03 — No command-line `-Mdelphi` / `-Mobjfpc`
- 2026-08-03 — regression: test-core#src:test/test_c_struct_fields.pas red at 42786f141ea7 (auto-filed by twatch)
- 2026-08-03 — regression: test-core#src:test/test_c_packed_aligned.pas red at 42786f141ea7 (auto-filed by twatch)
- 2026-08-03 — A NilPy `def sizeof(x)` is hijacked by Pascal's `SizeOf` intrinsic
- 2026-08-03 — A bare procvar is still not called outside an assignment
- 2026-08-03 — `obj.field += n` on a class-typed field silently yields 0
- 2026-08-03 — `from mod import NAME as ALIAS` — the alias is parsed and thrown away
- 2026-08-03 — An immediately-invoked lambda is not callable
- 2026-08-03 — `__abs__`/`__invert__`/`__index__` never dispatched — raw handle used as the value
- 2026-08-03 — `&`/`|`/`^` on boolean-typed operands unconditionally rejected by PyBitGuard
- 2026-08-03 — `__ne__` ignored — `!=` always negates `__eq__`
- 2026-08-03 — Plain `char` is unsigned at runtime but signed when constant-folded
- 2026-08-03 — `range(a, b, s)` with a NEGATIVE step passed at runtime yields an empty range
- 2026-08-03 — lambda body that is an expression *around* a call cannot call a def
- 2026-08-03 — A procedural variable in a value context takes its ADDRESS instead of calling it
- 2026-08-03 — An inherited class attribute is empty when read through a subclass instance
- 2026-08-03 — `obj.method(a + b)` to a `const Variant` param fails to parse OUTSIDE NilPy
- 2026-08-02 — `list.reverse()` was missing
- 2026-08-02 — path-form `uses './x.c'` collides with the enclosing unit's OWN name
- 2026-08-02 — Every spawned child process gets a completely empty environment
- 2026-08-02 — `and` / `or` evaluate the LEFT operand twice
- 2026-08-02 — Augmented assignment to a variant-typed field corrupts it
- 2026-08-02 — `//=` is true division, not floor division
- 2026-08-02 — FPC seed drift: `PyBytesCi` is used 3700 lines before it is defined
- 2026-08-02 — regression: test-smoke#src:compiler/compiler.pas red at b11e604f8043 (auto-filed by twatch)
- 2026-08-02 — The watcher files regression stubs but never closes them
- 2026-08-02 — `round(x, n)`: negative n ignored, and ties went half-up
- 2026-08-02 — Building pdfgen: `strings.h` comes from the host, and `time`/`bcmp` bind at the wrong arity
- 2026-08-02 — `A.call(self)` won't parse if `A` was instantiated at module level first
- 2026-08-02 — regression: test-nilpy#src:test/test_nilpy_bytes_decode.npy red at 74a925112afc (auto-filed by twatch)
- 2026-08-02 — xtensa windowed: by-value record function results
- 2026-08-02 — `0 or "x"` returns True — a mixed str/number `and`/`or` yields a bool instead of the operand
- 2026-08-02 — A constructor call in an unpacking right-hand side won't parse
- 2026-08-02 — -O3 reads a global across the call that writes it (silent wrong value)
- 2026-08-02 — `dns_wire` answers NXDOMAIN for an IPv4 literal, so the facade's answer depends on the backend
- 2026-08-02 — A function-local assignment WRITES the module global of the same name
- 2026-08-02 — The watcher clone is not a dev checkout — xeon's agent needs its own
- 2026-08-02 — FPC seed drift #3: `PyWiden` called from `parser.inc`, defined in `pyparser.inc`
- 2026-08-02 — `StrToFloat` is not correctly rounded, so exact decimals still do not read back
- 2026-08-02 — Numeric builtin gaps: `float("inf")`, variadic `min`/`max`, `sum(x, start)`
- 2026-08-02 — A quick canary for NilPy and C, matching the Pascal one
- 2026-08-02 — Can we trust the watcher, and how does it tell anyone when we can't?
- 2026-08-02 — The environment's write side — SetEnvironmentVariable, and the child sees it
- 2026-08-02 — A derived tuple decayed into a list
- 2026-08-02 — The missing-dunder expect-FAIL assertion is stale (second instance)
- 2026-08-02 — `gate.sh` prints a spurious `integer expression expected` on every run
- 2026-08-02 — `progress.sh claim`/`resolve` silently no-op when a ticket lacks the expected body line
- 2026-08-02 — Benchmark timings under 1s are quantized to a 50 ms grid
- 2026-08-02 — test-core RED: `test_nilpy_dataclass_dict_factory.npy`
- 2026-08-02 — NilPy: remaining uforth walls past ~88% (closure-captured defaults, then exec)
- 2026-08-02 — ESP examples panic at `app_main`: their build scripts omit two required flags
- 2026-08-02 — `.items()` on a dict LITERAL receiver is not found
- 2026-08-02 — `for i in range(n)` LOOPS FOREVER when n is a variant
- 2026-08-02 — `self.n += v` adds 1 instead of v when v is a variant parameter
- 2026-08-02 — `FloatToStrSig` caps at 15 significant digits, so no double round-trips
- 2026-08-02 — xtensa windowed: every frame costs ≥256 bytes, so recursion dies early on IDF
- 2026-08-02 — DNS backends beyond dns_wire: dns_libc / dns_resolved / dns_esp + selection
- 2026-08-02 — `struct stat.st_nlink` is hardcoded to 1
- 2026-08-02 — crtl gap batch: `chdir`, `dup`, `dup2`, `symlink`, `link`
- 2026-08-02 — `trackt setup` should detect the box and default to the right role
- 2026-08-02 — crtl gap batch, 2026-08: 10 assumed-libc symbols real C reaches for
- 2026-08-02 — xtensa: support calls/definitions with more than 6 parameter words
- 2026-08-02 — `Hi` / `Lo` always split a 32-bit value, whatever the argument type
- 2026-08-02 — `dns_libc` — a getaddrinfo backend, for the policy `dns_resolved` cannot see
- 2026-08-02 — regression: test-core#src:test/test_nilpy_dataclass_dict_factory.npy red at 2fbb5a270acc (auto-filed by twatch)
- 2026-08-02 — `o.ClassName` on a `TObject` local silently becomes a dynamic-attr fetch
- 2026-08-02 — ETXTBSY on exec permanently reds a single-shot self-host job
- 2026-08-02 — `localtime()` returns UTC, so every local timestamp a C program prints is wrong
- 2026-08-02 — NilPy identifiers are case-INSENSITIVE; Python's are case-sensitive
- 2026-08-02 — `str.index()` / `str.rindex()` were missing
- 2026-08-02 — `apps/ide/eliah/main.pas:1431` — `EliahForm.Win.Caption`: no `Win` member exists
- 2026-08-02 — gate.sh contention check errors on every idle run
- 2026-08-02 — `progress.sh claim`/`resolve` silently no-op Owner/Status on YAML-only tickets
- 2026-08-02 — Connect-by-name with A-first, AAAA-fallback ordering
- 2026-08-02 — A non-literal class attribute corrupts the class layout
- 2026-08-02 — `math.h`'s `M_*` constants were absent, so `M_PI` silently evaluated to 0
- 2026-08-02 — regression: test-core#src:compiler/compiler.pas@2 red at 96cffaf08de5 (auto-filed by twatch)
- 2026-08-02 — esp_timer callbacks are not dispatched — and one extra statement fixes it
- 2026-08-02 — `%r` rendered as `%s` — silently, and only for strings
- 2026-08-02 — `--threadsafe` self-host is 121 fixups over `MAX_GLOBFIX`
- 2026-08-02 — `*args` is a list, not a tuple
- 2026-08-02 — `raise E()` on an empty Exception subclass: segfault / silent no-op
- 2026-08-01 — xeon's job set covers ~a third of the NilPy tests, so a red `test-nilpy` reads GREEN
- 2026-08-01 — User-defined dunders are ignored, and the operator then does arithmetic on the object HANDLE
- 2026-08-01 — A def-local assignment widens the same-named module global to a variant
- 2026-08-01 — The self-host build's fixed /tmp paths defeat the watcher's dedicated clone
- 2026-08-01 — Auto-filed cascades read as emergencies for already-fixed shas
- 2026-08-01 — `with` skips `__enter__`/`__exit__` entirely
- 2026-08-01 — optdiff shard identity is positional — one new test file re-files the same bug
- 2026-08-01 — Every `print("literal")` reserved 8 MiB of BSS
- 2026-08-01 — Bitwise/shift operators on a class instance segfault
- 2026-08-01 — Make the quick gate quick, and stop Gate: lines prescribing long local suites
- 2026-08-01 — `dict(pairs)` subscript and `bytes.decode()` segfault
- 2026-08-01 — `s.split(sep)[i]` on a variable receiver won't lower
- 2026-08-01 — regression CASCADE: 60 jobs newly red at 25678cbdd57c (auto-filed by twatch)
- 2026-08-01 — `make compiler/pascal26` demands one-pass convergence; a stale seed then fails a gate that would pass
- 2026-08-01 — regression: optdiff#shard2/6 red at d87301219197 (auto-filed by twatch)
- 2026-08-01 — `test_nilpy_import_sqlite` asserts the *host's* SQLite version
- 2026-08-01 — Overload resolution binds an unrelated class to a class-typed parameter
- 2026-08-01 — regression: test-nilpy#src:test/test_nilpy_operator_dunders.npy red at 6840247771d5 (auto-filed by twatch)
- 2026-08-01 — List ordering on the static path compares heap addresses, not contents
- 2026-08-01 — `test-zlib` gcc oracle no longer builds on gcc >= 14
- 2026-08-01 — FPC seed drift: `PyMakeTruthy` forward is in the wrong file
- 2026-08-01 — `__bool__`/`__len__` ignored — every object is truthy, silently
- 2026-08-01 — Missing arithmetic dunder aborts the build instead of raising
- 2026-08-01 — Snapshot the compiler into the run's scratch dir instead of running the shared path
- 2026-08-01 — Typed-constant initializers are not applied in a Nil Python build
- 2026-08-01 — regression: test-nilpy#src:test/test_nilpy_import_sqlite.npy red at 6840247771d5 (auto-filed by twatch)
- 2026-08-01 — A global sharing a name with a method parameter loses its class type (operators only)
- 2026-08-01 — A `full` run wipes job statuses the full tier does not cover
- 2026-08-01 — A tool that tells the pushing agent when T reds one of ITS shas
- 2026-08-01 — `Ord()` / `Chr()` / `Length()` / `Succ()` are not folded in constant expressions
- 2026-08-01 — regression: optdiff#shard0/6 red at 0ceeeaa004dc (auto-filed by twatch)
- 2026-08-01 — Mixed-type guard fires only for VARIANT operands; fully static operands do pointer math
- 2026-08-01 — `L"..."` is not widened in value/pointer context
- 2026-08-01 — `optdiff#shardN/6` is a positional identity, so failures migrate between shards
- 2026-08-01 — SQLite SQL parity: external libsqlite3 vs self-compiled amalgamation
- 2026-08-01 — `--status` mixes two sources and reports a healthy watcher as DOWN
- 2026-08-01 — Run the self-host fixedpoint first and publish its RED immediately
- 2026-08-01 — regression CASCADE: 15 jobs newly red at b45c759f9e65 (auto-filed by twatch)
- 2026-08-01 — regression: optdiff#shard5/6 red at 2add2ebb487b (auto-filed by twatch)
- 2026-08-01 — Idle fuzz/bench leak `/tmp`; on a tmpfs box that is RAM, not disk
- 2026-08-01 — `7f111d229`'s two new tests are red — one real gap, one test-escaping bug
- 2026-08-01 — `str.format` ignores explicit positional indices
- 2026-08-01 — Comparison dunders (`__lt__`/`__eq__`/`__gt__`/…) not dispatched — silent handle comparison
- 2026-08-01 — A full run evicts opt-tier verdicts, manufacturing NEW-RED every cycle
- 2026-08-01 — A run whose compiler changed underneath it must report INVALID, not PASS/FAIL
- 2026-07-31 — nilpy: infer field types from `self.x = <param>`
- 2026-07-31 — An undeclared identifier passed as a callback compiles to NULL and segfaults
- 2026-07-31 — `**` is missing from pyeval's expression grammar
- 2026-07-31 — FPC seed drift: `fpc compiler/compiler.pas` fails with 8 errors
- 2026-07-31 — NilPy: a class body of only `pass` fails to parse
- 2026-07-31 — A Markdown library — and the `markdown` Python shim over it
- 2026-07-31 — `str.format` with more than one argument
- 2026-07-31 — NilPy: file I/O (`with open`), list comprehensions, and dict literals-in-args
- 2026-07-31 — nilpy: the aggregate builtins
- 2026-07-31 — RTL: month and day name arrays
- 2026-07-31 — NilPy: a `-> None` def assigned to a name, then called directly, segfaults
- 2026-07-31 — Callable options for the tkinter façade — LANDED 2026-07-28
- 2026-07-31 — The crtl header root resolves against CWD, so building outside the repo root silently uses glibc's headers
- 2026-07-31 — `min("cab")` / `max("cab")` do not compile
- 2026-07-31 — Shared objects carry no `PT_GNU_STACK` — dlopen fails on Linux 7.x
- 2026-07-31 — nilpy: tuple return
- 2026-07-31 — `f.write()` silently writes nothing, and once a "w" open exists, `print(f.read())` dumps RTTI MEMORY to stdout
- 2026-07-31 — nilpy: f-string format specs
- 2026-07-31 — tkinter façade: widen it to what a real application uses
- 2026-07-31 — Finish the IPv6 surface (UDP, accept peer, asyncnet, AAAA, dual-stack)
- 2026-07-31 — NilPy: real lambda expressions (function values)
- 2026-07-31 — The `**` and `/=` operators and `divmod()` are missing
- 2026-07-31 — `xs += ys` on a VARIANT-typed list rebinds instead of extending, so the caller never sees it
- 2026-07-31 — lib pyexec: a real exec() for Python-subset source (library, two engines)
- 2026-07-31 — NilPy: `None` as a first-class variant value (VT_EMPTY)
- 2026-07-31 — NilPy: `import <sibling>.py` — compile a real Python module as a unit
- 2026-07-31 — Redefining a `def` silently does nothing — the FIRST body still runs
- 2026-07-31 — str.rsplit()/partition()/rpartition() missing
- 2026-07-31 — A `for` variable that was previously bound to a non-string value iterates GARBAGE
- 2026-07-31 — Reading an attribute that does not exist yields None — and on None it can yield a STRING
- 2026-07-31 — set methods missing: issubset/issuperset/union/intersection/difference/discard
- 2026-07-31 — On i386, growing crtl breaks `main`'s exit code in programs that never call the new code
- 2026-07-31 — `[list] + non-list` silently corrupted instead of raising TypeError
- 2026-07-31 — `arr[i]^.Field` loses the pointed-to record type — but only in some units
- 2026-07-31 — PCL — compile-time widgetset selection + sparse-matrix hard-fail
- 2026-07-31 — nilpy: dotted package imports
- 2026-07-31 — A qualified UNIT-LEVEL proc call cannot omit a defaulted parameter
- 2026-07-31 — nilpy: nested comprehensions
- 2026-07-31 — pyeval prints a Boolean as 1/0 where CPython prints True/False
- 2026-07-31 — `main()` without a `return` yields a garbage exit status
- 2026-07-31 — `print` writes each argument as it goes, so an exception mid-list leaves partial output
- 2026-07-31 — `Vector(1,2) + Vector(3,4)` silently computed garbage — arithmetic dunders never dispatched
- 2026-07-31 — PCL — seal the leaky TWidgetSet seam
- 2026-07-31 — NilPy: `Exception(msg)` — the root class takes no arguments
- 2026-07-31 — nilpy: fallback import (`try/except ImportError`)
- 2026-07-31 — A function with no `return` yields UNINITIALIZED garbage, not None
- 2026-07-31 — NilPy: default arguments as explicit by-value capture
- 2026-07-31 — `sorted(key=...)` ignores most keys, and a callable passed as a VALUE has no common ABI
- 2026-07-31 — tkinter façade: item specs, StringVar traces, and what settings.py still needs
- 2026-07-31 — `FloatToStr` keeps SIX decimal places, so it loses 9 digits FPC keeps — and returns `0` below 5e-7
- 2026-07-31 — TypeRef: one type handle, carried — not ten parallel tuples
- 2026-07-31 — nilpy: `d[k] += 1` is not an lvalue
- 2026-07-31 — A class's variant-typed field holding a managed string is not released on finalize — general, not Exception-specific
- 2026-07-31 — `def f(a, b=[])` SEGFAULTS the moment the default is used as a container
- 2026-07-31 — Two watcher hosts fight over `TSTATE.md` and drop each other's verdicts
- 2026-07-31 — An unannotated def's inferred return type is wrong for several common expression shapes
- 2026-07-31 — `%e` and `%g` silently render as `%f` — a wrong answer to an EXPLICITLY requested format
- 2026-07-31 — Pascal: conditional defines leak across unit boundaries
- 2026-07-31 — `-n` on a user class silently computed garbage — `__neg__` never dispatched
- 2026-07-31 — Indexed-property setter statement no longer parses (test-core RED on master)
- 2026-07-31 — No access to environment variables anywhere in the RTL
- 2026-07-31 — tkinter facade parameters named with a trailing underscore cannot be passed by name
- 2026-07-31 — `exec(src, env)` refuses a host call unless `env` has a `"vm"` key
- 2026-07-31 — `enumerate`, `zip`, `dict.items` and `most_common` build pairs that print as lists
- 2026-07-31 — `return s[0]` gives back the character CODE — a subscript return infers an int type
- 2026-07-31 — `xs[0] = xs[1] = 3` writes only `xs[1]` — the other target is silently skipped
- 2026-07-31 — A unit reached only TRANSITIVELY crashes the program at startup
- 2026-07-31 — A comprehension's loop variable leaks and OVERWRITES the enclosing binding — and can segfault
- 2026-07-31 — Every caught exception leaks its object — 640k raises cost 105 MB
- 2026-07-31 — NilPy: a lifted lambda always discarded its own return value
- 2026-07-31 — `&`/`|`/`-`/`^` on sets, `|` on dicts silently did raw pointer arithmetic
- 2026-07-31 — nilpy: builtin runtime errors are not catchable
- 2026-07-31 — `__LINE__` / `__FILE__` / `__func__` carry nothing, and several predefines are missing
- 2026-07-31 — A module-level name bound inside a block cannot be READ by a later top-level assignment
- 2026-07-31 — nilpy: `configparser`
- 2026-07-31 — bin()/oct() missing; enumerate(xs, start) had no offset form
- 2026-07-30 — `chr()` of a variant returns the wrong character — the slot is read as an ordinal
- 2026-07-30 — `return Node(...)` leaks one object ref per call; `x = Node(...); return x` does not
- 2026-07-30 — `str(3 % 2.5)` prints the double's BIT PATTERN
- 2026-07-30 — A module-level ANNOTATED global is not visible in a keyword argument
- 2026-07-30 — `str(None)` prints `0`, but `str(x)` with `x = None` prints `None`
- 2026-07-30 — A set LITERAL keeps duplicates; `set().add()` removes them
- 2026-07-30 — `nonlocal x` — the write never reaches the enclosing function
- 2026-07-30 — Arithmetic on mismatched operand types silently does POINTER math
- 2026-07-30 — `is` on two lists compares CONTENTS, so distinct lists are "identical"
- 2026-07-30 — `zip(list, str)` yields nothing — and segfaults if any loop ran before it
- 2026-07-30 — A METHOD returning a freshly built string leaks it; the same def does not
- 2026-07-30 — `def f(): s = "ab"; for ch in s: print(ch)` SEGFAULTS
- 2026-07-30 — Runtime-raised errors bypass try/except entirely (division by zero, index, key)
- 2026-07-30 — Tk: `invalid command name "pxxcb"` in a long-running app
- 2026-07-30 — `def f(s): return s[0]` SEGFAULTS — indexing an unannotated str parameter
- 2026-07-30 — reportlab shim: `PDFTextObject.setTextOrigin` (and whatever follows it)
- 2026-07-30 — `s[0] >= "0"` is ALWAYS False and `s[0] < "0"` ALWAYS True — a char is ordered against the literal's ADDRESS
- 2026-07-30 — pyeval passes a host method's KEYWORD arguments POSITIONALLY (silent wrong option)
- 2026-07-30 — nilpy: `int("abc")` halts instead of raising ValueError
- 2026-07-30 — `PyTypeError` halts the process, so `except TypeError:` cannot catch it
- 2026-07-30 — `0 == None` is True, and `None == 0` does not parse
- 2026-07-30 — Container-method gaps: `list.remove`, `list.index`, `list.copy`, one-argument `dict.pop`
- 2026-07-30 — songformatter: the walls between "GUI builds" and "first document renders"
- 2026-07-30 — `str()` of a float whose integer part exceeds Int64 writes garbage bytes
- 2026-07-30 — Two function-value shapes that do not COMPILE
- 2026-07-30 — nilpy: `Cls().method()` does not parse
- 2026-07-30 — `"x" * n` is QUADRATIC — 80k characters takes 19 seconds
- 2026-07-30 — A returned closure reads GARBAGE for its captures unless it takes exactly one argument
- 2026-07-30 — A nested def's capture set is read before it is final
- 2026-07-30 — A call whose managed-string result is DISCARDED leaks it
- 2026-07-30 — `sorted()` over a list of tuples or lists dies with "expected a number, got object"
- 2026-07-30 — Pascal: a second class with the same name is not diagnosed
- 2026-07-30 — `return inner` — a nested def returned as a value — yields None
- 2026-07-30 — A `Callable[...]`-annotated parameter segfaults when the argument is a heap callable
- 2026-07-30 — `2.5 * "ab"` hangs forever
- 2026-07-30 — `print(x)` and `print(str(x))` disagree for a float
- 2026-07-30 — A bound METHOD passed to a string parameter compiles, and produces garbage
- 2026-07-30 — C VLA (`int arr[n]` with runtime `n`) silently corrupts adjacent stack slots
- 2026-07-29 — `from m import f` makes every def in an imported module use the function-object ABI
- 2026-07-29 — A SUBSCRIPT argument passed to a variant parameter arrives as garbage
- 2026-07-29 — SettingsEditor segfaults reading a bound method off a field
- 2026-07-29 — Chaining a method call on the RESULT of a method call does not parse
- 2026-07-29 — NilPy: a function is a VALUE — bind it to a name, store it, call it back
- 2026-07-29 — `cb = lambda ...` then `cb(x)` compiles and does NOTHING
- 2026-07-29 — `lambda: f()` — a zero-parameter lambda cannot call a compiled def
- 2026-07-29 — NilPy object reclamation is switched off inside an imported `.py` module
- 2026-07-29 — `__eq__` is ignored — `==` on user objects compares identity
- 2026-07-29 — `not <object>` was TRUE for every live object — silently wrong answers
- 2026-07-29 — `str(obj)` SEGFAULTS when `__str__`/`__repr__` builds a string and nothing touched the instance first
- 2026-07-29 — `{"k": 1} == {"k": 1}` is False — dict equality compares identity, not value
- 2026-07-29 — `-g` on a C file gives line numbers from the PREPROCESSED text
- 2026-07-29 — Returning a SLICE of a variant local gives the caller an unusable value
- 2026-07-29 — nilpy: `"%.2f" % value` produces garbage
- 2026-07-29 — `3 == "ab"` SEGFAULTS
- 2026-07-29 — A def stored in a NAME and then called SEGFAULTS
- 2026-07-29 — `str()` of a tuple/list returns the container's POINTER
- 2026-07-29 — NilPy: a BOUND METHOD as a value (`self.push` carries self)
- 2026-07-29 — Debug heap: poison-on-free, quarantine, and an object retain/release trace
- 2026-07-29 — nilpy: an unknown method call compiles, then crashes
- 2026-07-29 — Umbrella: make pxx programs (and the compiler) DEBUGGABLE
- 2026-07-29 — Neither `super().m()` nor `Parent.m(self)` reaches an overridden method
- 2026-07-29 — A class attribute holding an INSTANCE crashes when traversed
- 2026-07-28 — A nested def's non-integer result is read as a number — silent garbage
- 2026-07-28 — cfront: file-scope globals are unregistered when the `.c` is a UNIT
- 2026-07-28 — `pydict_v` handed back a BORROWED dict — use-after-free, heap corruption
- 2026-07-28 — regression: test-core#src:test/test_nilpy_html_tempfile.npy red at 106a63cabbca (auto-filed by twatch)
- 2026-07-28 — nilpy: omitted `x=None` parameter on an UNANNOTATED def segfaults
- 2026-07-28 — cfront: `__pxx_fegetround` unresolved on any float-`printf`
- 2026-07-28 — A class in an imported `.py` module: "invalid class index in vmtaddr"
- 2026-07-28 — An unannotated def returning a COMPARISON typed its result from the operands
- 2026-07-28 — crtl's C `exit()` shadows Pascal's `Exit` — order-dependent
- 2026-07-28 — regression: test-core#src:examples/tk/facade_and_paths.npy red at d64a5d6a97b4 (auto-filed by twatch)
- 2026-07-28 — nilpy: `import json` binds to the RTL's Pascal `json` unit
- 2026-07-28 — A parameter with a STRING default is read as garbage
- 2026-07-28 — The pxx allocator corrupts after a NilPy dict literal + repeated class allocation
- 2026-07-28 — A unit-level CONST shadows a same-named FIELD inside the class's own method
- 2026-07-28 — A tuple used as a dict KEY never matches on lookup
- 2026-07-28 — An import inside a function body — and the fix that silently emptied the body
- 2026-07-28 — nilpy: unannotated `return <variant> + <str>` infers a number
- 2026-07-28 — A C unit's code segfaults when the program also uses sysutils
- 2026-07-28 — A mixed-type conditional in a comprehension element turns numbers into strings
- 2026-07-28 — A .py module's statement list is RECYCLED while it is still being built
- 2026-07-28 — `.field` on a dynamically-typed value is refused when two classes disagree
- 2026-07-28 — A C library's function name shadows a Python module name as a qualifier
- 2026-07-28 — A nested def cannot capture a name the enclosing function assigns LATER
- 2026-07-28 — Variant -> scalar unbox is unavailable on cross targets
- 2026-07-27 — key_analysis.py compiles and then segfaults
- 2026-07-27 — nilpy: unit-qualified class construction
- 2026-07-27 — The function-object ABI
- 2026-07-27 — nilpy: importing an RTL unit fails on `Exception.CreateFmt`
- 2026-07-27 — `NativeUInt(rec.intField)` read the neighbouring field too
- 2026-07-27 — Three NilPy walls found in key_analysis.py
- 2026-07-26 — nilpy: `re` module
- 2026-07-26 — regex engine library
- 2026-07-23 — NilPy tyChar arg to a string parameter leaks one handle per call
- 2026-07-23 — Managed-string arg-materialization temp leaks one handle per loop iteration
- 2026-07-23 — isNilPy: inline managed-string deref to a const param leaks the temp
- 2026-07-23 — NilPy: `bytes(seq[a:b])` leaks the intermediate slice object every call
- 2026-07-23 — NilPy: a bitwise op on a FLOAT variant truncates instead of raising TypeError
- 2026-07-23 — NilPy: dict insert/lookup is O(N), not O(1) — quadratic build, drives uforth O(N²)
- 2026-07-23 — pyeval leaks per exec() call — forensics from the object-reclamation night
- 2026-07-22 — NilPy: storing a class value into a variant-typed local mis-tags it VT_INT64
- 2026-07-22 — Passing a captured dynamic array by `var` from a parallel-for body segfaults
- 2026-07-22 — Open `array of Variant` parameter silently miscompiles (reads only first elem)
- 2026-07-22 — NilPy: comprehension `if` filters — `[x for x in xs if x > 1]`
- 2026-07-22 — `{$Q+}` does not trap 32-bit overflow — only 64-bit ops are checked
- 2026-07-22 — NilPy: uforth exceptiontest source-unlink test fails under the full driver
- 2026-07-22 — C float literal in the subnormal range parses to 0.0
- 2026-07-22 — `cdecl` indirect call with more than 6 integer args is rejected
- 2026-07-22 — One test-core job needs ~6.8 GB and flakes under load (the recurring `Terminated`)
- 2026-07-22 — NilPy: `\xHH` (and presumably `\0`-style) escapes in a BYTES literal are not decoded
- 2026-07-22 — cfront: `*(double*)&(unsigned long long){0x...}` segfaults at runtime
- 2026-07-22 — Captured Boolean loses its type inside a parallel-for body (overload resolution fails)
- 2026-07-22 — {$Q+} narrow-width overflow still unchecked on the 32-bit backends
- 2026-07-22 — "Param slot holds a pointer" is written 8 times; 3 copies disagree
- 2026-07-22 — aarch64: comparing two string-valued Variants is always FALSE
- 2026-07-22 — `Length()` / `High()` on an open-array parameter return 0 / -1
- 2026-07-22 — A unit's `finalization` section is silently never executed
- 2026-07-22 — A unit's `begin ... end.` initialization section is silently never executed
- 2026-07-22 — NilPy: exception message text — super().__init__(msg) discarded, str(e) empty
- 2026-07-22 — Managed-record function results into a REUSED destination leak the old payload
- 2026-07-22 — Variant FUNCTION forwarding another Variant call's result corrupts the value
- 2026-07-22 — -O3 differential: test_stack_frame_intrinsics_b270.pas (optdiff, persistent)
- 2026-07-22 — NilPy: a comprehension used directly as a for-loop iterable segfaults
- 2026-07-22 — NilPy: `x = obj.method()` immediately followed by `y = x` leaves x undefined
- 2026-07-22 — aarch64: repeated string concat inside a function LEAKS
- 2026-07-22 — bug: C→riscv32 by-value record result emits PXXMemMove but the C compile never injects builtinheap
- 2026-07-22 — NilPy: def returning both a str and an int literal SIGSEGVs on the int arm
- 2026-07-22 — NilPy: a list passed to a method truncates its pointer to 32-bit (SIGSEGV)
- 2026-07-22 — `test-core` token-growth job takes 77s and gets killed under load
- 2026-07-22 — NilPy: a USER class method `-> bytes` result loses its TPyBytes identity
- 2026-07-21 — NilPy/uforth: managed-string hidden temp released with garbage at method return
- 2026-07-21 — NilPy: wide int literals + the `& 0xFFFF...` unsigned-mask idiom don't promote to bignum
- 2026-07-21 — RTTI: field get/set by name (extends the VMT-8 method-reflection blob)
- 2026-07-21 — Wire pyeval into NilPy exec() — auto-use triggers an unrelated str-index segfault
- 2026-07-21 — NilPy: print() of a variant holding a list/dict shows `<object>` not its repr
- 2026-07-20 — NilPy: `raise` and `try` / `except`
- 2026-07-20 — NilPy: a 1-character string literal was a char, and segfaulted as an argument
- 2026-07-20 — NilPy: `xs += [2]` on a list SEGFAULTS
- 2026-07-20 — NilPy: calling a method on a VARIANT receiver is a parse error
- 2026-07-20 — NilPy: a method returning `str` returns garbage
- 2026-07-20 — Thin Tcl/Tk binding (`import tk`)
- 2026-07-20 — The watcher daemon executes the DEV CHECKOUT's twatch.py while testing the clone
- 2026-07-20 — NilPy: any statement after a `for` inside a def failed to parse
- 2026-07-20 — NilPy: the remaining missing builtins — min/max, list(), reversed(), enumerate(), hex()
- 2026-07-20 — Demo — parallel hashing / mini proof-of-work
- 2026-07-20 — crtl libm: Payne-Hanek reduction for |x| >= 1e8 trig (sin/cos/tan)
- 2026-07-20 — NilPy: bytearray + slices (uforth's memory emulation)
- 2026-07-20 — Promotable int stage 2 — storage, checked arithmetic, Write
- 2026-07-20 — NilPy: comparison chaining (`0 <= i < n`)
- 2026-07-20 — Promotable int: inline the fast path (check elision)
- 2026-07-20 — NilPy: unary minus binds LOOSER than `//` and `%` — `-7 // 2` is -3, not -4
- 2026-07-20 — NilPy: `s * n` on a string returns a POINTER, silently
- 2026-07-20 — NilPy `and` / `or` / `in` / `is` do not work in a CALL ARGUMENT
- 2026-07-20 — NilPy: an annotated assignment only accepted a SINGLE-TOKEN annotation
- 2026-07-20 — NilPy: keyword arguments on the `print` builtin (`file=`, `flush=`, `sep=`, `end=`)
- 2026-07-20 — NilPy: `//` and `%` are WRONG for negative operands, silently
- 2026-07-20 — NilPy: a ONE-character literal through a ctor `str` param becomes a char — silent, then segfaults
- 2026-07-20 — Demo — real-time auto-zoom Mandelbrot with a per-target ASM iteration kernel
- 2026-07-20 — NilPy: a subclass overlaid the parent's fields and VMT slots
- 2026-07-20 — Promotable int — a new arbitrary-precision integer type (fixnum + heap bignum)
- 2026-07-20 — Overload-resolution failure dumps compiler internals to stdout
- 2026-07-20 — NilPy `str()` prints a string's POINTER and a bool's 1
- 2026-07-20 — A decimal literal wider than Int64 WRAPS silently
- 2026-07-20 — Promotable int: heap tier faults on 32-bit native targets — FIXED
- 2026-07-20 — NilPy: cannot subscript a string LITERAL — `"abc"[1]`
- 2026-07-20 — NilPy `int("42")` returns a POINTER, silently — and `float()` does not exist
- 2026-07-20 — NilPy: `not s` on a string was ALWAYS True (silent wrong branch)
- 2026-07-20 — NilPy: sequence unpacking (`a, b = ...`, `for k, v in ...`)
- 2026-07-20 — NilPy: `==` on a list or dict compares IDENTITY, not contents
- 2026-07-20 — NilPy: `total = total + k * v` with a VARIANT operand fails to lower
- 2026-07-20 — NilPy: Python's builtin exception classes, and `int(s, base)` that raises
- 2026-07-20 — Chain-to-system-trust-store (/etc/ssl/certs) for the TLS client
- 2026-07-20 — Demo — parallel prime count / find
- 2026-07-20 — NilPy: string methods (.upper/.lower/.strip/.split/.join/.startswith...)
- 2026-07-20 — Promotable int inside a Variant
- 2026-07-20 — NilPy: a list/dict ELEMENT cannot be used as a scalar — silent garbage or IR_UNSUPPORTED
- 2026-07-20 — NilPy: a call returning a CLASS lost its class identity (silent, then SIGSEGV)
- 2026-07-20 — A `str` boxed into a Variant does not OWN its bytes — silent wrong values
- 2026-07-20 — NilPy: `s = "x" * 300` infers s as INT, then no overload of len matches
- 2026-07-20 — Demo — GUI Mandelbrot, multithreaded tiled zoom
- 2026-07-20 — NilPy: `@property` and `@x.setter` inside a class
- 2026-07-20 — NilPy: `-> ret` is MANDATORY on every def; Python makes it optional
- 2026-07-20 — NilPy: a def as a VALUE (procedure pointer)
- 2026-07-20 — NilPy: keyword arguments at call sites
- 2026-07-20 — `len(v)` on a Variant segfaults — a polymorphic builtin cannot pick an overload statically
- 2026-07-20 — NilPy: a string local TRUNCATES at 255 characters, silently
- 2026-07-20 — NilPy: `[0] * 4` (list repeat) is not lowered
- 2026-07-20 — NilPy: `sub in s` on a STRING segfaults
- 2026-07-20 — PromoInt cannot be initialised from a literal wider than Int64
- 2026-07-20 — NilPy: print() of a list prints the handle, not the elements
- 2026-07-20 — NilPy: nested `def`
- 2026-07-19 — NilPy: a class-typed field loses its class identity
- 2026-07-19 — Synapse library — proper compile check (Track B)
- 2026-07-19 — C corpus: Duktape — JS engine (GC + IEEE-754 corners)
- 2026-07-19 — feature: run the IR fuzzer automatically whenever the project is otherwise idle
- 2026-07-19 — `.asm` as a first-class source frontend (assemble + link to object/exe/.so)
- 2026-07-19 — fpjson + fpcunit suite as a committed, enrollable test target
- 2026-07-19 — C test-corpus expansion: c-testsuite → zlib → tcc (+ csmith fuzz harness)
- 2026-07-19 — Game and engine library candidate suite
- 2026-07-19 — Flagship demo — chess engine (real-world app + cross-target oracle + benchmark)
- 2026-07-19 — NilPy: f-strings
- 2026-07-19 — By-VALUE Variant parameters are miscompiled (silent garbage)
- 2026-07-19 — Undefined field access on an empty record COMPILES silently (reads garbage)
- 2026-07-19 — NilPy string subscripts are 1-BASED — silently off by one vs CPython
- 2026-07-19 — feature: PXX Basic — own free-form BASIC dialect (real demo target, not an esoteric probe)
- 2026-07-19 — Track T: bench.tsv has no `fpc` column for mandelbrot / raytracer / sieve
- 2026-07-19 — pasmith — random well-defined Object Pascal generator, differentially tested against FPC
- 2026-07-19 — C corpus: bring up QuickJS — a real JS engine as a cfront target
- 2026-07-19 — crtl libm: correctly-rounded (or <1ulp) transcendentals — cbrt/log/pow/exp
- 2026-07-19 — sqlite arc — interim static capacity bumps
- 2026-07-19 — NilPy: dict v1 — TPyDict
- 2026-07-19 — Register-based internal calling convention (args in registers, not stack slots)
- 2026-07-19 — regression: test-core#src:test/test_interface_mainbody_ascast_temp.pas red at daf8d692af04 (auto-filed by twatch)
- 2026-07-19 — Codegen: emit human-readable assembly text instead of raw bytes
- 2026-07-19 — {$Q+} follow-up: cross backends + remaining checked operations
- 2026-07-19 — NilPy: type locals from the AST, like Rust and Zig already do
- 2026-07-19 — pxx internal calling convention + unified int/float residency allocator
- 2026-07-19 — regression: test-core#src:test/test_basic_comprehensive.bas red at 3f2828476c6c (auto-filed by twatch)
- 2026-07-19 — Inline routine expansion (`inline;`)
- 2026-07-19 — Optimization levels (`-O0/-O1/-O2/-O3/-Os`) + pass framework
- 2026-07-19 — Assembler as a first-class citizen (umbrella)
- 2026-07-19 — NilPy: len() on a str (only TPyList is accepted today)
- 2026-07-19 — Meta: multithreading — libc-free Pascal threads (umbrella / epic)
- 2026-07-18 — Huge C struct: a field past 64 KB offset reads/writes the wrong slot
- 2026-07-18 — C: local function-pointer-array initializer rejected
- 2026-07-18 — C: multi-dim array indexed by another multi-dim array read miscompiles
- 2026-07-18 — `IR overflow`: a fixed MAX_IR node limit rejects very large (valid) functions
- 2026-07-18 — WideChar variable → string: concat segfaults, arg mis-resolves (assign fixed)
- 2026-07-18 — C: pointer-to-array function parameters mis-stride / don't lower
- 2026-07-18 — csmith -O0 miscompile (seed 31039): wrong g_22 checksum
- 2026-07-18 — C: single-subscript row decay of a multi-dim array crashed (NULL pointer)
- 2026-07-18 — twatch: suppress downstream auto-filing when a root job (fpc-bootstrap) is red
- 2026-07-18 — Interface-heavy program crashes at exit/finalization (SIGSEGV)
- 2026-07-18 — C frontend: pointer-to-multidim-array declarator `int (*p)[A][B]` rejected
- 2026-07-18 — Main-body interface `as`-cast temp finalized at the wrong time (vs FPC)
- 2026-07-18 — csmith -O0 miscompile (seed 5038): wrong checksum vs gcc
- 2026-07-18 — FPC seed build fails after Lua C frontend helper additions
- 2026-07-18 — Field access through an interface variable is accepted and crashes (FPC rejects it)
- 2026-07-18 — Track O: in-tree xmm fusion for float expression temporaries
- 2026-07-18 — C frontend: partial multi-dim array index rejected ("wrong number of array subscripts")
- 2026-07-18 — x86-64 div-by-zero abort stub is emitted unconditionally, even for division-free programs
- 2026-07-18 — C: `sizeof(array-type)` ignores the array extent
- 2026-07-17 — `parallel for` scheduling policy + reduction (load-aware, work-stealing)
- 2026-07-17 — regression: test-c-conformance-riscv32#shard0/6 red at ba5b85d6122d (auto-filed by twatch)
- 2026-07-17 — regression: test-aarch64#src:test/test_asyncecho.pas red at 88986014e07d (auto-filed by twatch)
- 2026-07-17 — `AnsiString(func())` of an external cdecl PChar result mis-lowers — garbage length (SILENT)
- 2026-07-17 — unqualified call binds to a System builtin over a uses'd unit's routine
- 2026-07-17 — aarch64: `parallel for` with 2+ captures → Bus error (alignment)
- 2026-07-17 — regression: test-core#src:test/test_static_array_length.pas red at fb9346bd4bce (auto-filed by twatch)
- 2026-07-17 — Flaky async/multithreaded run-tests produce false NEW-REDs (no confirm-retry in reap())
- 2026-07-17 — SILENT: char-indexing through a pointer-to-string deref (`p^[k]`) reads garbage
- 2026-07-17 — `s := w` where `w: WideChar` segfaults (WideChar var → AnsiString)
- 2026-07-17 — Parallel processing as a language feature
- 2026-07-17 — `AnsiString(fp())` of a function-pointer PChar result mis-lowers — garbage length (SILENT)
- 2026-07-17 — Port the statement-atomic I/O lock to i386/aarch64/arm32
- 2026-07-16 — Libc-free POSIX signal handler infrastructure (rt_sigaction)
- 2026-07-16 — GUI/PCL apps regressed on current stable — real window never shows (crash / 20x20)
- 2026-07-16 — pasmith: wide rungs (`with`/`reccopy`/…) mutate a GLOBAL inside a function body → order-dependent program
- 2026-07-16 — `Length`/`High` of a static array used directly returns garbage
- 2026-07-15 — C bitfield promotion is wrong + a bitfield-layout compile hang
- 2026-07-15 — open array of static-array elements: call-site marshaling broken
- 2026-07-15 — double global/static initializer with arithmetic folds to 0.0
- 2026-07-15 — pasmith: widen OOP beyond the single inheritance chain
- 2026-07-15 — {$R+} N-D bases (the last unchecked index shape)
- 2026-07-15 — crtl stdint.h: missing INTn_C / UINTn_C / INTMAX_C constant macros
- 2026-07-15 — Track D: fpc-compatibility.md understates the language aim ("useful subset")
- 2026-07-15 — progress.py mis-tags tickets when the Type/Track bullet mentions another track in prose
- 2026-07-15 — member visibility is not enforced (private/protected/strict readable+writable from anywhere)
- 2026-07-15 — Method pointer to a virtual method via a base ref captures the static address
- 2026-07-15 — alloca(): dynamic stack allocation for the C frontend
- 2026-07-15 — Re-triage: 33 skipped conformance tests now pass by exit code
- 2026-07-15 — C usual arithmetic conversions: int operand not converted to unsigned
- 2026-07-15 — Bench: give mandelbrot and raytracer an FPC-comparable variant
- 2026-07-15 — toperator93: compiles clean, segfaults at runtime
- 2026-07-15 — Class managed fields are not finalized on destruction
- 2026-07-15 — pxx compiler hangs (non-termination) on two valid C programs
- 2026-07-15 — Track T: c-conformance shards time out under full parallel load (false REDs)
- 2026-07-15 — testmgr flake: aarch64 c-conformance shard3 (00040.c) exit-124 under full load
- 2026-07-15 — COM interface refcount: last-reference release does not destroy the object
- 2026-07-15 — `Copy` on a char: FPC promotes char → string, pxx rejects
- 2026-07-15 — --strict-fpc: the FPC-parity behaviour umbrella
- 2026-07-15 — Reference: complete the CLI flags, add a modes/strictness page, add a directive reference
- 2026-07-15 — c-conformance cross shards false-RED on a 10s per-test timeout under full load
- 2026-07-15 — 32-bit backends: shr/shl ignored the operand's width in the 64-bit pair path
- 2026-07-15 — {$Q+} / {$OVERFLOWCHECKS ON}: checked integer arithmetic
- 2026-07-15 — class consts are unscoped globals — silent name-collision miscompiles
- 2026-07-15 — for-in: two variants produce silent wrong output (exit 0)
- 2026-07-15 — Document the licensing split (MPL 2.0 compiler / Zlib RTL)
- 2026-07-15 — C long-long bitfields (width 33-64) mis-promoted
- 2026-07-15 — {$R+} / {$RANGECHECKS ON}: runtime range checking
- 2026-07-15 — COM interface managed lifetime — refcount an interface var like an ansistring
- 2026-07-15 — lib-test: console_solitaire smoke is flaky (moves=0/1/2, expectation moves=2)
- 2026-07-15 — {$I+} / {$IOCHECKS ON}: raise on Text I/O failure
- 2026-07-15 — @obj.Method as a call argument to a named method-pointer param: no overload match
- 2026-07-14 — Typed metaclasses: `class of TFoo`, so a TClass variable can call the class's methods
- 2026-07-14 — bug: UNION bitfields packed sequentially like struct bitfields (silent wrong bits)
- 2026-07-14 — regression: test-sqlite-threads-i386#src:tools/run_sqlite_thread_test.sh red at 940b261f8678 (auto-filed by twatch)
- 2026-07-14 — ESP-IDF (.o) profile: builtin heap still uses Linux mmap — any string literal crashes
- 2026-07-14 — Open-array parameter in a record method (rejected for now — it SEGFAULTED)
- 2026-07-14 — riscv32: a BY-VALUE record parameter wider than 4 bytes passes only its first word — SILENTLY
- 2026-07-14 — regression: test-core#src:test/test_platform_defines.pas@2 red at 96147f570d29 (auto-filed by twatch)
- 2026-07-14 — Port cdecl indirect calls (dynamic library loading) to the other targets
- 2026-07-14 — regression: test-sqlite-threads-aarch64#src:tools/run_sqlite_thread_test.sh red at 8766dccbd2dd (auto-filed by twatch)
- 2026-07-14 — `make test-esp-bare` — the esp32s3 (xtensa) leg emits NO UART output
- 2026-07-14 — `string[N] := <longer>` does not truncate — it overruns the buffer
- 2026-07-14 — Fuzz findings ledger — one entry per cause, and a tap that closes and reopens itself
- 2026-07-14 — regression: test_op_overload.pas red — b369 made class = / <> rejection unconditional
- 2026-07-14 — `PNode = ^TNode` — the forward pointer's record FIELDS never got their pointee patched
- 2026-07-14 — --emit-obj: @proc fixups require an iram/interrupt routine — plain callbacks can't be registered
- 2026-07-14 — `--strict` — opt-in standard-Pascal / FPC-parity mode (umbrella)
- 2026-07-14 — `not ord(x)` does a boolean negation, not a bitwise complement
- 2026-07-14 — riscv32 cross-target test coverage is thin vs i386/arm32/aarch64
- 2026-07-14 — Advanced records: constructors + `class operator` — DONE
- 2026-07-14 — bug: frozen inline strings (string[N]) are not implemented on riscv32 / xtensa
- 2026-07-14 — bug: test_c_lazycasing.pas hardcodes /tmp/liblazycasing.so (non-hermetic test)
- 2026-07-14 — Compiler: port fixed-size in-RAM tables to dynarrays / source-size allocation
- 2026-07-14 — `#pragma pack` is IGNORED — struct layout silently differs from gcc
- 2026-07-14 — bug: multidim brace elision flattens rows — partial rows are not zero-filled
- 2026-07-14 — `case` evaluated its selector expression ONCE PER LABEL, not once
- 2026-07-14 — pxx accepts invalid programs the FPC suite's %FAIL tests reject
- 2026-07-14 — pasmith emits order-dependent programs, and its printed repro line does not reproduce
- 2026-07-14 — testmgr "hangs": it is STARVATION, and the cause is orphans pstree cannot show
- 2026-07-14 — pasmith is too NARROW: 527 divergences, one bug. Csmith found dozens.
- 2026-07-14 — Record-cast field access resolves every field at offset 0 (SILENT wrong values)
- 2026-07-14 — bug: scalar pointer-global initializers silently skipped (null pointer at runtime)
- 2026-07-14 — Member access on a plain Pointer is SILENTLY ACCEPTED and yields the pointer
- 2026-07-14 — regression: test-sqlite-threads-arm32#src:tools/run_sqlite_thread_test.sh red at 940b261f8678 (auto-filed by twatch)
- 2026-07-14 — regression: test-lua-cross#src:test/lua/runner.c red at 940b261f8678 (auto-filed by twatch)
- 2026-07-14 — Operator overload not found when a record operand is a CALL RESULT
- 2026-07-14 — riscv32: p256field core-dumps (and bignum will not compile there at all)
- 2026-07-14 — `make bootstrap` is broken: FPC can no longer compile `compiler/compiler.pas`
- 2026-07-14 — Interfaces
- 2026-07-14 — arm32: `lib_chacha20poly1305` segfaults — and it is NOT the riscv32 array-param bug
- 2026-07-14 — regression: test-core#src:test/test_fpc_compat_batch2.pas red at f6bcbe6c1237 (auto-filed by twatch)
- 2026-07-14 — passing a CLASS instance to an INTERFACE parameter stores a raw object pointer — later interface calls jump into data
- 2026-07-14 — QWord ⊕ non-negative literal: result/comparison domain demoted to signed
- 2026-07-14 — `on E: T` descendant matching is closed-world per UNIT — later units' classes escape
- 2026-07-14 — advisory: fpc-bootstrap canary red at 603cf2bd — forwards drift + enum-arg from b310
- 2026-07-14 — regression: test-core#src:test/test_widechar_to_utf8_b319.pas red at d94db8d6b0cc (auto-filed by twatch)
- 2026-07-14 — Cross targets: a `string[N]` field poisons every pointer store to its record
- 2026-07-14 — bug: struct-by-value / varargs args truncated on 32-bit targets (00204.c)
- 2026-07-14 — bug: pxx-built csmith program segfaults (csmith seed 2), -O0
- 2026-07-14 — arm32 + i386: Int64→Double conversion drops the high word
- 2026-07-14 — `TInterfacedObject` does not exist — inheriting from it compiles, then segfaults under ARC
- 2026-07-14 — ExceptAddr is a STUB returning nil — the raise site is never recorded
- 2026-07-14 — `double(q)` / implicit qword→double converts as signed for values ≥ 2^63
- 2026-07-13 — A parenthesised expression loses its class id: `(b as T)[i]` and `(b as T).ClassName`
- 2026-07-13 — regression: test-core#src:test/test_string_to_pchar_auto.pas red at 8997639f144f (auto-filed by twatch)
- 2026-07-13 — ParseTypeKind's builtin-name chain runs BEFORE the alias table — every builtin name shadows a source declaration
- 2026-07-13 — bug: FPC could not compile HEAD — cold bootstrap broken (RESOLVED 6e523474)
- 2026-07-13 — `^string` — dereferencing a pointer to a managed string segfaults (all targets)
- 2026-07-13 — An UNKNOWN type name silently becomes a 4-byte Integer (pointers truncate)
- 2026-07-13 — bug: a metaclass ARRAY ELEMENT is not accepted as a receiver — silent garbage
- 2026-07-13 — Metaclass construction WITH ARGUMENTS segfaults on every non-x86-64 target
- 2026-07-13 — regression: optdiff#shard4/6 red at 6e0395e5495f (auto-filed by twatch)
- 2026-07-13 — bug: untyped string constants are not SCOPED — a method's local const leaks to every later routine
- 2026-07-13 — regression: test-core#src:test/test_sqlite_crud_lazy.pas red at f913bd22ae30 (auto-filed by twatch)
- 2026-07-13 — bug: left-shift result type / integer promotion wrong on aarch64 (00200.c)
- 2026-07-13 — FPC's own TPoint parses, but its METHODS do not resolve
- 2026-07-13 — bug: a GLOBAL multidim array of pointers ignores its brace initializer
- 2026-07-13 — Heap: segregated free lists (size classes) — kill the O(n) free-list walk
- 2026-07-13 — fpjson (fcl-json) — rung 2 of the Pascal OOP corpus
- 2026-07-13 — regression: test-c-conformance-aarch64#shard3/6 red at 90ae846bda82 (auto-filed by twatch)
- 2026-07-13 — TObject.GetInterface(IID, out obj) — needs an interface GUID table
- 2026-07-13 — riscv32: storing a string LITERAL into a class field gives an empty string
- 2026-07-13 — `PInteger(p)^` does not compile, though `var p: PInteger` does
- 2026-07-13 — regression: test-aarch64#src:test/test_streaming_enumset.pas red at adaecd1206f3 (auto-filed by twatch)
- 2026-07-13 — System stack-frame intrinsics: get_frame / get_pc_addr / get_caller_stackinfo
- 2026-07-13 — regression: test-c-conformance-aarch64#shard0/6 red at e530da678bc9 (auto-filed by twatch)
- 2026-07-13 — bug: an overloaded method's IMPLEMENTATION does not always match back to its DECLARATION
- 2026-07-13 — regression: test-c-conformance-arm32#shard3/6 red at e6844ff49085 (auto-filed by twatch)
- 2026-07-13 — bug: _Generic picks `int` where the operand is `long` on 32-bit targets
- 2026-07-13 — _Generic on a comparison matched NO association (hard error on valid C)
- 2026-07-13 — Pascal corpus: fpcunit — OOP + RTTI test framework (and the harness for the rest)
- 2026-07-13 — Advanced records: methods (and `public`/`private`) inside a record
- 2026-07-13 — regression: test-aarch64#src:test/test_lfm.pas red at adaecd1206f3 (auto-filed by twatch)
- 2026-07-13 — Class properties (and properties backed by a `class var`)
- 2026-07-13 — regression: test-core#src:test/test_sqlite_crud.pas red at ff90643ef2a3 (auto-filed by twatch)
- 2026-07-13 — TObject RTTI reflection: MethodAddress / MethodName / GetMethodList (+ instance->RTTI link)
- 2026-07-12 — regression: test-smoke#11 red at 163ffea562fa (auto-filed by twatch)
- 2026-07-12 — regression: test-i386#src:test/test_scheduler.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — regression: test-c-conformance-riscv32#shard5/6 red at 96b6bac331d9 (auto-filed by twatch)
- 2026-07-12 — regression: test-c-conformance-arm32#shard5/6 red at 96b6bac331d9 (auto-filed by twatch)
- 2026-07-12 — Generic templates beyond classes: records, arrays, procvars
- 2026-07-12 — TObject-typed parameter is 32-bit-truncated in methods, unmatched in plain routines
- 2026-07-12 — feature: Eliah tabbed component bar (Lazarus-style, with icons)
- 2026-07-12 — {$I file} misses are silent, and includes only resolve next to the source file
- 2026-07-12 — regression: test-core#676 red at 51f2a8a3258f (auto-filed by twatch)
- 2026-07-12 — {$SCOPEDENUMS} silently ignored — duplicate enum member resolves to the WRONG enum
- 2026-07-12 — Aggregate / frozen-string result via virtual or indirect call — cross backends
- 2026-07-12 — regression: test-sqlite-threads-i386#00 red at 83006e927e35 (auto-filed by twatch)
- 2026-07-12 — Whole-array assignment TO a `var` array parameter segfaults
- 2026-07-12 — regression: test-c-conformance-aarch64#shard1/6 red at 96b6bac331d9 (auto-filed by twatch)
- 2026-07-12 — regression: test-c-conformance-i386#shard5/6 red at 96b6bac331d9 (auto-filed by twatch)
- 2026-07-12 — regression: test-core#665 red at 8d1e694a9d8d (auto-filed by twatch)
- 2026-07-12 — regression: test-sqlite-threads-x86_64#00 red at 83006e927e35 (auto-filed by twatch)
- 2026-07-12 — regression: test-i386#src:test/test_timer.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — writeln of a ShortString/frozen-string PARAM prints wild memory
- 2026-07-12 — High(Type)/Low(Type) not accepted in constant expressions / array bounds
- 2026-07-12 — FPC conformance: triage the ~237 untriaged skips into gap: / wontfix:
- 2026-07-12 — regression: test-i386#src:test/test_reactor.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — regression: test-sqlite-threads-arm32#00 red at 83006e927e35 (auto-filed by twatch)
- 2026-07-12 — _Generic cannot tell `long` from `int` on ILP32 (silent wrong selection)
- 2026-07-12 — regression: test-arm32#src:test/test_timer.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — regression: test-zlib#00 red at 83006e927e35 (auto-filed by twatch)
- 2026-07-12 — `if (v)` on a 64-bit value tested only the LOW half on every 32-bit target
- 2026-07-12 — regression: test-i386#src:test/test_channel.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — Method default parameters land on the WRONG slot (silent wrong values)
- 2026-07-12 — Whole-array assignment of an N-D array copies garbage (no error, no crash)
- 2026-07-12 — bug: twatch repro lines rot — job numbers drift as tests are added
- 2026-07-12 — regression: test-c-conformance-riscv32#shard2/6 red at 96b6bac331d9 (auto-filed by twatch)
- 2026-07-12 — regression: test-c-conformance-i386#shard2/6 red at 96b6bac331d9 (auto-filed by twatch)
- 2026-07-12 — testmgr: enroll the C cross-conformance matrix + lua-cross in the full tier
- 2026-07-12 — regression: test-arm32#src:test/test_asyncecho.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — regression: test-core#131 red at 83006e927e35 (auto-filed by twatch)
- 2026-07-12 — regression: test-i386#src:test/test_asyncecho.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — testmgr: FPC-bootstrap canary — catch seed rot before it matters
- 2026-07-12 — regression: test-core#666 red at 2758e0d9814c (auto-filed by twatch)
- 2026-07-12 — regression: test-arm32#src:test/test_channel.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — Zero-init contract — one library-owned managed-slot zeroing guarantee
- 2026-07-12 — bug: `make bootstrap` (FPC cold-start) is red — compiler source drifted out of FPC compatibility
- 2026-07-12 — regression: test-arm32#src:test/test_scheduler_exc.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — regression: test-c-conformance-arm32#shard2/6 red at 96b6bac331d9 (auto-filed by twatch)
- 2026-07-12 — regression: test-arm32#src:test/test_scheduler.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — `PChar(s)^` / cast-derefs rejected as var/untyped method-call arguments
- 2026-07-12 — 64-bit named constants are truncated to 32 bits on the 32-bit targets
- 2026-07-12 — regression: test-i386#src:test/test_scheduler_exc.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — advisory: fpc-bootstrap#src:compiler/compiler.pas red at 96b6bac331d9 (auto-filed by twatch)
- 2026-07-12 — Nested variant parts with a tagged discriminant (`case f: T of` inside a variant arm)
- 2026-07-12 — testmgr: cap its own memory in a cgroup scope + swap-aware admission
- 2026-07-12 — regression: test-arm32#src:test/test_reactor.pas red at aaa58e72c1e8 (auto-filed by twatch)
- 2026-07-12 — {$...} directives are processed inside (* ... *) comments
- 2026-07-12 — crtl printf counted `ll` but never honoured it (arg truncation + shift on ILP32)
- 2026-07-12 — Unary minus did not apply the integer promotions (silent unsigned compare)
- 2026-07-12 — regression: test-sqlite-threads-aarch64#00 red at 83006e927e35 (auto-filed by twatch)
- 2026-07-11 — unicodestring/widestring: types not really supported (decls "work", semantics don't)
- 2026-07-11 — Class-typed property WRITE mis-parses ("Expected: [") depending on uses order
- 2026-07-11 — case-of-string: SEGFAULTS at runtime (worse than the missing diagnostics)
- 2026-07-11 — Parser requires `program` header — FPC allows headerless programs
- 2026-07-11 — overload resolution ignores record IDENTITY — wrong overload silently called
- 2026-07-11 — IR correctness fuzzer — cross-target differential + mutation-seeded
- 2026-07-11 — bug: -O2 (DEFAULT) resident param reads STALE after exception longjmp
- 2026-07-11 — DNS resolver library (`dns.pas`) with selectable backends
- 2026-07-11 — Str builtin: variable width/precision expressions (`Str(x:len:dec, s)`)
- 2026-07-11 — vecmath library: TVec2/3/4 + TMat with operator overloads — Track B
- 2026-07-11 — feature — real-window auto-closing GUI smoke (solitaire / eliah) + xvfb in gui-test
- 2026-07-11 — C desktop path — compile real portable C (tiny-regex → lua → sqlite)
- 2026-07-11 — unit-scoped operator definitions silently skipped → record binop miscompile
- 2026-07-11 — Self-host guard: reject IR_UNSUPPORTED at compile time (fail loud, not miscompile)
- 2026-07-11 — `otherwise` as case-else soft keyword (FPC default-mode parity)
- 2026-07-11 — testmgr: opt-level differential tier + tracked benchmark runs
- 2026-07-11 — Inline record-field `array[0..CONST - 1]` fails to parse (const-EXPRESSION bound)
- 2026-07-11 — NilPy: `str` parameter breaks Length / indexing / codegen
- 2026-07-11 — Mode-Delphi generics syntax: `TFoo<T> = class`, inline `TFoo<LongInt>`
- 2026-07-11 — trackt watch: print timestamped completion line per finished suite run
- 2026-07-11 — bignum operator layer: TBigInt + - * div mod comparisons — Track B
- 2026-07-11 — Transitive `uses dns_cache` corrupts managed-string codegen in an importer
- 2026-07-11 — testmgr: FPC benchmark comparison + static web dashboard (bench, suites, FPC conformance)
- 2026-07-11 — ucomplex library (complex numbers, FPC-compatible API) — Track B
- 2026-07-11 — operator declarations: FPC named-result syntax + `/` in the op set
- 2026-07-10 — bug: impl-prescan rejects include-level var sections late in the include chain
- 2026-07-10 — libc-free link: unresolved external symbol patched to 0 instead of a link error
- 2026-07-10 — duktape: JS number formatting wrong (doubles scaled by ~5^13)
- 2026-07-10 — sqlite libc-free runtime: pull crtl math/string + the OS/VFS bridge
- 2026-07-10 — -O2 miscompiles the x86-64 disassembler (`WriteDisassemblyX64`)
- 2026-07-10 — C: struct field resolves to offset 0 in the full sqlite unixFile (context-dependent)
- 2026-07-10 — C: call through deref of a STRUCT-MEMBER pointer-to-function-pointer
- 2026-07-10 — C frontend: support `-D<name>[=<value>]` command-line macro defines
- 2026-07-10 — C: call through a DEREF of a pointer-to-function-pointer drops the call
- 2026-07-10 — crtl gaps surfaced by the undeclared-identifier warning: rmdir, F_OK/W_OK/R_OK, register
- 2026-07-09 — C preprocessor: macro-arg paren/comma scan ignores string & char literals
- 2026-07-09 — C compound literals `(struct S){...}` — file scope SIGSEGVs, init battery fails
- 2026-07-09 — C switch: non-compound body + case labels inside nested statements (Duff's device)
- 2026-07-09 — C frontend: missing `__STDC_VERSION__` predefine breaks C99 feature-detection
- 2026-07-09 — C pointer-to-array declarator `char (*p)[4]` hits IR "Unsupported linear node"
- 2026-07-09 — C: cumulative parser desync ("stray token at top level") on large multi-function files
- 2026-07-09 — C functions returning function pointers: typedef'd return type + full declarator
- 2026-07-09 — c-testsuite 00204: calling-convention battery (structs 1..17 bytes by value, HFAs, varargs)
- 2026-07-09 — C99 designated initializers + compound literals unsupported
- 2026-07-09 — C corpus: chess engine — perft as a compiler-independent oracle
- 2026-07-09 — C GNU statement expressions ({ ... }) + __builtin_expect
- 2026-07-09 — regression: test-emit-obj#02 red at c53553f21214 (auto-filed by twatch)
- 2026-07-09 — C: a 2-D (multi-dim) brace initializer of a FLOAT element array zero-fills
- 2026-07-09 — regression: test-lua#00 red at 074e902b62ef (auto-filed by twatch)
- 2026-07-09 — bug: UClass field window base goes stale under shells-then-fields registration
- 2026-07-09 — C11 _Generic selection
- 2026-07-09 — C anonymous struct/union member braced-designated init (`-fms-extensions`)
- 2026-07-08 — C: calling through an INLINE fn-pointer parameter — "call to undeclared function"
- 2026-07-08 — C: anonymous struct global var with a NESTED anonymous enum member drops the declarator
- 2026-07-08 — C: LOCAL nested aggregate initializers fail ("expected C expression") — extend the elision walker to locals
- 2026-07-08 — C/i386: call through a pointer to a VARIADIC function (fnptr = &fprintf) segfaults (00189)
- 2026-07-08 — C wide string literals L"..." / wchar_t
- 2026-07-08 — regression: test-core#603 red at 3615126067aa (auto-filed by twatch)
- 2026-07-08 — regression: test-core#602 red at 4dfde8f92cb4 (auto-filed by twatch)
- 2026-07-08 — Nested-comment brace hazard in compiler source — investigation + lint guard
- 2026-07-08 — Comment diagnostics to de-facto standard: unterminated-comment error (Pascal) + -Wcomment (C)
- 2026-07-08 — Multi-dim ORDINAL global array initializer skipped (`int a[2][3] = {{1,2,3},{4,5,6}}` stays zero)
- 2026-07-08 — Rust frontend — `match` pattern-bind + generalized tagged union
- 2026-07-08 — C: a function returning `float` (single) returns 0 on x86-64
- 2026-07-08 — crtl strtod/printf-%g precision: cJSON floats drift by 1 ulp (tstate red)
- 2026-07-08 — regression: 25c1dded (GNU statement expressions) — 150x cfront slowdown on GTK headers + cJSON/lua corpus breakage
- 2026-07-08 — C runtime/library layer (`lib/crtl`) plus direct C-library packages
- 2026-07-08 — C shift-result-type battery (00200): result type = promoted LEFT operand across all int classes
- 2026-07-08 — C VLA `char test[argc]` + label as sole statement of braceless if
- 2026-07-08 — crtl: missing <netinet/tcp.h>, <netdb.h>, <poll.h> — ENet falls back to host headers
- 2026-07-08 — C initializers: designated + nested/brace-elided initializers (EPIC)
- 2026-07-08 — C lexer: block comment possibly not terminated at the FIRST `*/`
- 2026-07-08 — crtl: %g double formatting (or %lg parse) loses exactness — cJSON floats fail
- 2026-07-08 — c-testsuite 00129: goto past declarations + pathological `s` shadowing + #define s s
- 2026-07-08 — C: `sizeof((long)expr)` returns 4, not 8 — widening-cast expression keeps operand width
- 2026-07-08 — C brace elision + nested/anonymous-member aggregate initializers
- 2026-07-08 — regression: test-core#600 red at e0ccfaebfe91 (auto-filed by twatch)
- 2026-07-08 — C: printf without #include <stdio.h> silently drops output / formatting
- 2026-07-08 — flaky: cJSON / lua corpus runners race on a shared /tmp input path under parallel testing
- 2026-07-08 — C: float (single) vararg prints 0.000000 on i386/arm32/riscv32 — default argument promotion missing
- 2026-07-08 — bug-c-typedef-array-element-init
- 2026-07-08 — C/i386: `return X` of an enum constant declared inside an anonymous-struct member returns garbage (00120)
- 2026-07-08 — C: `(float)*doubleptr` narrows to 0 when a single value is live (x86-64)
- 2026-07-08 — Rust frontend — lexer/parser skeleton + entry point
- 2026-07-08 — C sqlite feature suite (test/csqlite_suite.c) SIGSEGVs at runtime on master HEAD
- 2026-07-08 — C frontend + lua — cross-target / ESP feature coverage
- 2026-07-08 — stb_sprintf %f/%g produces empty output under pxx
- 2026-07-08 — C: a crtl auto-pulled int function used inline in a signed compare reads unsigned
- 2026-07-08 — Rust frontend — generics with trait bounds
- 2026-07-08 — C: struct-tag redefinition misfiles a field into the prior record → self-referential record → compiler SIGSEGV
- 2026-07-08 — FPC seed drift: compiler no longer FPC-compiles (3 spots)
- 2026-07-08 — cpreproc: "C include file not found" reports the last search dir, not the requested name
- 2026-07-08 — C expression result-type model: `!` width, shift result type, hex-constant typing
- 2026-07-08 — perf: real GTK2 system-header import is ~20s / 13619 procs — flaky-timeout candidate
- 2026-07-07 — C anonymous struct/union members (C11) reject with "expected C expression"
- 2026-07-07 — C static initializers: cast-expression and int→double conversion silently produce 0
- 2026-07-07 — Esoteric probe: Algol (60)
- 2026-07-07 — C float (single precision): arithmetic rounding + implicit arg conversions wrong
- 2026-07-07 — C: hand-declared libc prototypes (no #include) silently no-op in libc-free mode
- 2026-07-07 — C ptrdiff of &-expressions: `&x[1] - &x[0]` wrong stride
- 2026-07-07 — C: taking &fprintf (crtl variadic) and calling through the pointer SIGSEGVs
- 2026-07-07 — C: zlib.h `gzgetc` function-like macro call fails to parse
- 2026-07-07 — C: address of an EXTERNAL function called through a pointer does nothing
- 2026-07-07 — Track T face 1: standalone test watcher (twatch) — continuous offloaded gate
- 2026-07-07 — crtl: `strtok` not implemented (undeclared function)
- 2026-07-07 — Parallel test harness — OS-level, opt-in, safe on weak hardware
- 2026-07-07 — C: string literal as binop operand must decay to char* value (== compare SIGSEGVs)
- 2026-07-07 — C crtl: long-double math (ldexpl, ...) missing — blocks tcc
- 2026-07-07 — C preprocessor: ## paste result must be rescanned for further macro expansion
- 2026-07-07 — C: __builtin_va_copy not supported (blocks tcc libtcc.c)
- 2026-07-07 — C double→int conversion missing on cross backends (i386/arm32/aarch64/riscv32)
- 2026-07-06 — C forward enum declaration `enum efoo;` (GCC extension, common in the wild)
- 2026-07-06 — C predefined macros: __LP64__ / _LP64 (and arch predefines) missing
- 2026-07-06 — Esoteric probe: Whitespace
- 2026-07-06 — Syscall-only pthread shim for libc-free C libraries
- 2026-07-06 — C: uninitialized local named same as an in-scope typedef mis-parses
- 2026-07-06 — bug: BASIC frontend's GOTO/GOSUB silently halt the program instead of jumping
- 2026-07-06 — Cross-target lua 5.4 + sqlite3 — build & run on all backends
- 2026-07-06 — C preprocessor: __VA_ARGS__ variadic macros
- 2026-07-06 — Esoteric probe: Fortran
- 2026-07-06 — C preprocessor: #pragma push_macro / pop_macro
- 2026-07-06 — Esoteric probe: LOLCODE
- 2026-07-06 — C `sizeof expr` without parentheses fails to parse
- 2026-07-06 — CREATE TRIGGER → spurious "out of memory" (huge bad-size alloc)
- 2026-07-06 — C struct field designators `.field = v` in braced initializers
- 2026-07-06 — C block-scope function declaration `int f(char *);` inside a body fails
- 2026-07-06 — C array element designators `[i] = v` + `[]` size inference from designators
- 2026-07-05 — Eliah / Ilja — single-window IDE (GUI + TUI)
- 2026-07-05 — feature: Eliah pane header — labelled collapse strip + chevron
- 2026-07-05 — feature: Eliah pane collapse/restore + ratio memory
- 2026-07-04 — Forward class decl + full decl that adds a base loses the class's fields
- 2026-07-04 — C: cast expression as call argument fails to parse
- 2026-07-04 — `TList.Notify` virtual hook + `TListNotification` — FPC Classes surface gap
- 2026-07-04 — `class function` / `class procedure` members inside a generic class
- 2026-07-04 — TComponent / TPersistent (FPC Classes owner-child surface)
- 2026-07-04 — Default parameter values on class/interface methods (works on free routines)
- 2026-07-04 — Downcast to an inherited PROPERTY reads the wrong offset (miscompile)
- 2026-07-04 — Hint directives (`deprecated` / `platform` / `experimental` / …) on const/type/proc
- 2026-07-04 — `var` section before a constructor/destructor impl fails — ctor/dtor eaten as a var name
- 2026-07-04 — `types` unit (System.Types core) — geometry records + TDuplicates
- 2026-07-04 — Self-host miscompilation: 3-function program with `if`/`else if` gives wrong result
- 2026-07-04 — Built-in TObject has no virtual `Destroy`/`Create` to `override` — breaks the universal FPC idiom
- 2026-07-04 — Implicit (sloppy) local variables behind a switch — `{$IMPLICITVARS ON}` / `--auto-locals`
- 2026-07-04 — `SizeOf(...)` (and const-intrinsics) not accepted by the compile-time ConstEval
- 2026-07-04 — Remove the sysutils Move/FillChar copies (now shadowed by builtin)
- 2026-07-03 — riscv32 hosted: exception machinery (raise/try) — last wall before chess
- 2026-07-03 — Fast pin: tiered test suite + stabilize-fast (target: pin in ~20s)
- 2026-07-03 — Sync primitives on futex — TCriticalSection/TMutex/TEvent/Once + atomics (M2)
- 2026-07-03 — `object` — a rooted object-reference type
- 2026-07-03 — PAL thread primitives — libc-free clone(2)/futex(2) (M1 keystone)
- 2026-07-03 — Metaclass alias descendant-constraint enforcement
- 2026-07-03 — Compiler self-compile hotspots — algorithmic wins (hash lookups, alloc, string append)
- 2026-07-03 — `flexcolumn` calling-convention directive
- 2026-07-03 — Method call before body: by-value <=8-byte record arg mislowers (i386 error; x64 program-level unresolved-forward)
- 2026-07-03 — net lib cross-target build matrix — i386 + arm32 backend gaps
- 2026-07-03 — Native Pascal TThread class (M3)
- 2026-07-03 — xtensa: class instantiation (VMT + ctor) not supported
- 2026-07-03 — Inline assembler depth
- 2026-07-03 — imm-fold: constant BINOP operand into the instruction immediate (-O1, x86-64)
- 2026-07-03 — Inline assembly support for other architectures (i386, aarch64, arm32)
- 2026-07-03 — riscv32 hosted: chess perft miscounts (164 vs 20) then segfaults — post-InitZobrist corruption
- 2026-07-03 — i386 --threadsafe runtime locks (heap / ARC / I-O)
- 2026-07-03 — ESP bare: try/except (raise currently terminates)
- 2026-07-02 — Implicit-Self method call loses to a same-name plain proc from a used unit
- 2026-07-02 — Some intrinsics are hard-reserved keyword tokens, blocking their use as identifiers (FPC allows it)
- 2026-07-02 — `Insert` / `Delete` intrinsics for dynamic arrays
- 2026-07-02 — Nested procedure can't call its sibling (and capturing self-recursion breaks)
- 2026-07-02 — Inline loop variables — `for var i := 0 to N` / `for var x in coll` (Delphi 10.3 Rio)
- 2026-07-02 — i386 target: `try...except` segfaults (layout-sensitive, not universal)
- 2026-07-02 — riscv32 hosted: plain `writeln` hello hangs under qemu-user (pre-existing)
- 2026-07-02 — Adopt MPL 2.0 (compiler) + zlib (runtime/libs) — licensing rollout
- 2026-07-02 — SysUtils `DecodeDate` missing — next Synapse `synautil` wall
- 2026-07-02 — C signed `>>` is a logical (not arithmetic) shift
- 2026-07-02 — Statement-level I/O serialization under threads
- 2026-07-02 — Bumping MAX_PROC_PARAMS 16→32 makes the compiler segfault (self-miscompile?)
- 2026-07-02 — Integer `div` / `mod` by zero aborts with SIGFPE (uncatchable)
- 2026-07-02 — Stackless generator: record locals / record yield element (chess GenMoves wall #2)
- 2026-07-02 — riscv32 / xtensa (`--esp-profile=bare`) reject even a trivial program — unsupported `call_ind` node
- 2026-07-02 — C: `va_start` ignores named FP and stack-spilled parameters
- 2026-07-02 — C `math.h` `round()`/`trunc()` — undefined symbol at link (compiles clean, fails at load)
- 2026-07-02 — TThread Execute that writes (writeln) crashes nondeterministically
- 2026-07-02 — Anonymous (inline) record types — `var x: record ... end;`
- 2026-07-02 — Re-sweep the whole C suite for remaining unsigned-semantics gaps
- 2026-07-02 — C: `arr->field = call()` store miscompiled when `arr` is an array
- 2026-07-02 — Stackless generator: allow `yield` inside a `case` statement
- 2026-07-02 — bug: nested `{ }` comments break the FPC idiom `{ ... '{' ... }`
- 2026-07-02 — `TEnum(intExpr)` ordinal→enum typecast fails: "undefined variable"
- 2026-07-02 — Threadsafe heap contract by memory-management mode
- 2026-07-02 — Cross targets: readln (console input) unsupported — chess demo wall #3
- 2026-07-02 — `SizeOf` wrong for static arrays, and rejects most named types
- 2026-07-02 — C `static` local with an initializer re-runs the initializer every call
- 2026-07-01 — By-value record param with a managed field aliases the caller (mutations leak)
- 2026-07-01 — `too many array constant elements` — Synapse `synautil` wall
- 2026-07-01 — Narrowing ordinal typecast doesn't truncate in rvalue position
- 2026-07-01 — Nested dynamic arrays (`array of array of T`) segfault on cross targets
- 2026-07-01 — Bug: `case ... else <stmt1>; <stmt2>; ... end` (multi-statement else, no begin/end) fails to parse
- 2026-07-01 — Bug: passing a FIXED-size array to an `array of T` open-array parameter stack-copies into the caller's frame
- 2026-07-01 — Bug: `var array[..] of AnsiString` parameter silently loses writes
- 2026-07-01 — Typed-constant `array of string` is broken (segfault ≤2 elems, bogus error ≥3)
- 2026-07-01 — `EmitAsmX64` has no `[base+index-register]` (SIB) form — fails safely, but with an unhelpful error
- 2026-07-01 — arm32: by-value record params over 4 bytes drop their high word (ABI gap)
- 2026-07-01 — Bug: `const array[0..N-1] of AnsiString = (...)` literal fails "too many array constant elements" despite correct count
- 2026-07-01 — Array constructor `[...]` as open-array arg fails at a statement-level call
- 2026-07-01 — `lib/asmcore` — clean standalone multi-target instruction encoder library
- 2026-07-01 — aarch64/arm32: record temporary as a by-value arg fails codegen
- 2026-07-01 — EmitAsmX64 conversion of heap-alloc/free/ansistr-retain/release codegen causes unbounded memory growth (OOM) + non-determinism during self-host
- 2026-07-01 — `except on E: BaseClass` does not catch a derived exception
- 2026-07-01 — Array-constructor statement-arg fails differently when a preceding param has a dynarray field
- 2026-06-30 — `SetLength(a, x, y)` one-call multidim allocation not parsed
- 2026-06-30 — Track-B wishlist — compiler features most wanted to unblock libraries + demos
- 2026-06-30 — FPC-seeded pascal26 binary segfaults at runtime
- 2026-06-30 — Variant-boxing temporaries are shared globals (thread-unsafe)
- 2026-06-30 — FPC bootstrap can't compile the asmcore units the compiler now `uses`
- 2026-06-30 — Eliah M1 — form designer (box emulation)
- 2026-06-30 — C `unsigned int` (32-bit) arithmetic computed in 64-bit — no wraparound, signed compares
- 2026-06-30 — Dynamic-array torture test — make dynarray trustable
- 2026-06-30 — ESP-IDF integration: Xtensa (ESP32-S2/S3) — QEMU + real hardware
- 2026-06-30 — Frozen-string function Result is a shared global → not reentrant / thread-unsafe
- 2026-06-30 — C `unsigned int` / Pascal Cardinal division+mod use signed div on 32-bit backends
- 2026-06-30 — Release packaging, reproducibility manifest, and `release.sh`
- 2026-06-30 — `Copy` as a generic overloaded intrinsic (string + dynarray families)
- 2026-06-30 — PAL esp/lwIP: getsockname & recvfrom return an unfilled (zero) sockaddr
- 2026-06-30 — arm32: support record function results larger than 4 param words (sret)
- 2026-06-30 — Unqualified property access inside a method body fails
- 2026-06-30 — Implicit identifier binding — forward-visible globals + optional auto-local, with a strictness switch
- 2026-06-30 — Audit: shared-global state — reentrancy & thread-safety
- 2026-06-30 — Support namespace aliasing in uses clauses (`uses 'name' as alias`)
- 2026-06-30 — Dynamic-array `a + b` concat silently miscompiles (compiles, no output)
- 2026-06-30 — Warn on oversized stack locals / stack frames
- 2026-06-30 — MVP `.asm` -> executable path (head #3, fast-tracked ahead of #1/#2)
- 2026-06-29 — Implement a C interop regression test for passphrase hashing (`crypt.h`)
- 2026-06-29 — C source frontend — compile C function bodies (statements + expressions)
- 2026-06-29 — C regex library dev-test import
- 2026-06-29 — C: `&global_array[const]` global pointer initializer computes wrong offset
- 2026-06-29 — Support parsing and enforcing struct alignment and packed attributes in C header import
- 2026-06-29 — Case-sensitive C header lookup mismatch on Linux
- 2026-06-29 — Bug: `--mimic-fpc` missing FPC version integer defines (`FPC_VERSION`, `FPC_RELEASE`, `FPC_FULLVERSION`)
- 2026-06-29 — Nil Python frontend (`.npy`)
- 2026-06-29 — Import C headers for complex libraries (glib/GTK-grade)
- 2026-06-29 — feature: Eliah shell — perspective-based IDE (one window, splitter-tree layout)
- 2026-06-29 — Memory/String corruption when calling methods on secondary interfaces
- 2026-06-29 — Capital `Write`/`WriteLn` rejected in some contexts (compiler self-build), works standalone
- 2026-06-29 — Bug: `Chr` as parameter name treated as built-in function
- 2026-06-29 — C varargs (va_list / va_start / va_arg) — implementation design
- 2026-06-29 — Eliah M0 — single tiled GTK3 window
- 2026-06-29 — Bug: named-type cast in constant expression fails ConstEval
- 2026-06-29 — C frontend — shared-IR touch points that belong to Track A
- 2026-06-29 — C: lua runner tests regressed (segfault on most scripts)
- 2026-06-29 — Re-pin stable for C stdio/socket PAL bridge
- 2026-06-28 — C: sqlite SQL exec reports corrupt sqlite_master during schema parse
- 2026-06-28 — C: `sizeof(array)` yields element size, not total array size
- 2026-06-28 — C: block-scope static record arrays in sqlite VFS init
- 2026-06-28 — Object-reference array identity lookup fails in Eliah palette icon handler
- 2026-06-28 — Demo — zoomable Mandelbrot explorer
- 2026-06-28 — C: sqlite SQL exec crashes in schema callback argv string path
- 2026-06-28 — bugfix: cfront — sqlite3 aggregate crash from inline struct pointer field
- 2026-06-28 — C: granular `--system-libs` opt-out for the magic-link model
- 2026-06-28 — Demo — CPU ray tracer
- 2026-06-28 — Implement C interop regression test for dynamic loading and runtime symbol invocation (`dlopen`/`dlsym`)
- 2026-06-27 — C: global struct-array initializer with a fn-ptr cast field stores garbage
- 2026-06-27 — C: calling an inline function-pointer struct member mis-lowers
- 2026-06-27 — C: ternary middle arm rejects comma expression
- 2026-06-27 — C `main(argc, argv)` gets real argc/argv
- 2026-06-27 — crtl: BSD socket wrappers over PAL IPv4 sockets
- 2026-06-27 — C: sqlite runtime undefined symbol `sqlite3MemSetDefault`
- 2026-06-27 — C: function-pointer local variable declaration not parsed
- 2026-06-27 — C: sqlite hits unsupported `AN_TERNARY` during IR lowering
- 2026-06-27 — C stdio must ride pxx syscalls (libc-free), not import libc
- 2026-06-27 — C: va_arg with local function-pointer typedef in sqlite
- 2026-06-27 — C: local static const multidimensional array initializer in sqlite
- 2026-06-27 — C `double` value model broken — lua floats all garbage
- 2026-06-27 — C: function returning function pointer prototype not registered
- 2026-06-27 — C: function-pointer struct member is silently dropped (layout + call + parse)
- 2026-06-27 — i386 backend: by-value set parameter unsupported
- 2026-06-27 — C: 6+ variadic args (overflow area) segfault
- 2026-06-27 — C `sizeof("string literal")` returns pointer size, not array size
- 2026-06-27 — C typedef alias to struct loses record id
- 2026-06-27 — C: sqlite offsetof-style field address in array bound
- 2026-06-27 — C: crtl headers miss libc syscall prototypes (fsync, …)
- 2026-06-27 — C `&` of certain operands lowers to IR_UNSUPPORTED (codegen crash)
- 2026-06-27 — C: preprocessor `defined(...)` expression leaks into sqlite token stream
- 2026-06-27 — FPC bootstrap no longer compiles compiler source
- 2026-06-27 — Pointer dereference collapses past depth 2 (Pascal `P^^^` / C `***p`)
- 2026-06-27 — crtl: `fopen`/`fclose`/`fseek`/`ftell` declared but not defined (no file open)
- 2026-06-27 — C: null pointer literal call arg lowers as address in sqlite
- 2026-06-27 — C: typedef return type can corrupt program entry call
- 2026-06-27 — C stdio (printf family) blocked — needs Pascal import + global data relocs
- 2026-06-27 — C chained pointer indexing loses base type
- 2026-06-27 — C: auto-search pxx's crtl headers by default (+ `-nostdinc`)
- 2026-06-27 — C: va_arg of any non-`int` type -> "invalid symbol in lea"
- 2026-06-27 — C: crtl `unistd.h` misses `getpid`
- 2026-06-27 — C: address of external libc function used as function pointer
- 2026-06-27 — C: global `double`/`float` initializer stored as 0
- 2026-06-26 — C: double passed as a variadic arg reads 0
- 2026-06-26 — C: 2D array struct field — partial-index row decay broken
- 2026-06-26 — FPC bootstrap: GetTokenStrFromRaw used in lexer.inc before its parser.inc definition
- 2026-06-26 — SizeOf intrinsic does not support variable or expression operands
- 2026-06-26 — C: nested/anonymous struct-or-union member makes the whole struct opaque
- 2026-06-26 — C: `p[i]` / `p+i` on a struct pointer uses the wrong element stride
- 2026-06-26 — User documentation site structure and first content pass
- 2026-06-26 — Bare own-name result of a VIRTUAL intrinsic-named method miscompiles
- 2026-06-26 — C: large (>16-byte) record passed by value gives garbage in the callee
- 2026-06-26 — C: post-increment/decrement used as a VALUE (`(p++)->f`, `x = a[i++]`)
- 2026-06-26 — C: `(p + i)->field` (field on a computed pointer) fails / Unsupported
- 2026-06-26 — Own networking library — native HTTP client (+ sockets, async)
- 2026-06-26 — bug: `not` on an integer is boolean-only on ESP (riscv32 / xtensa)
- 2026-06-26 — C: `f()->field` — field/index of a pointer-returning call result
- 2026-06-26 — bug: function Result of a managed-field record, passed as a call arg in its own reassignment, segfaults
- 2026-06-26 — bug: arm32 `writeln(LongWord)` mangles a value with the high bit set
- 2026-06-26 — C: ternary with two string-literal arms segfaults at runtime
- 2026-06-26 — C: int<->float numeric cast + computed-double spill across branches
- 2026-06-26 — C: `(type)` cast inside a constant expression (array dimension)
- 2026-06-26 — feature: value-bearing expression nodes for the C frontend (ternary + side-effecting exprs)
- 2026-06-26 — C const-eval: `~` (bitwise NOT) yields wrong value
- 2026-06-25 — Char-literal concatenation in a const expression fails (`const T = #65 + #66`)
- 2026-06-25 — A pointer dereference `p^` is rejected as a `var`/by-ref argument
- 2026-06-25 — SetLength on a record string/array field via a `var` parameter fails codegen
- 2026-06-25 — `Single` field/element inside a record or array stores/loads as zero
- 2026-06-25 — bug: passing an array that is a member of an aggregate (record field / 2D-array row) as a var/const param segfaults
- 2026-06-25 — Generic class METHOD bodies break in a program (work in a unit)
- 2026-06-25 — bug: comparing against a concatenation of string literals (`x = 'a' + 'b'`) segfaults
- 2026-06-25 — C: string literal assigned to a `char *` points at the Pascal length-prefix
- 2026-06-25 — bug: managed Length(ps^) / Length(rec.pf^) returns garbage (all targets)
- 2026-06-25 — bug: indirect call through a proc-typed value with a `const record` arg miscompiles
- 2026-06-25 — AnsiString `<` `>` `<=` `>=` return constants, not a real comparison
- 2026-06-25 — A `set of char` typed constant corrupts `Ord(char-var)` codegen
- 2026-06-25 — bug: `not` on an Int64 yields a boolean, not the bitwise complement
- 2026-06-25 — Unit-qualified constant reference `Unit.Const` is not resolved
- 2026-06-25 — Spurious "unterminated conditional directive" on synautil + jedi.inc
- 2026-06-25 — Plain (non-`const`) by-value record param >8B rejects a temporary argument
- 2026-06-25 — Typed string constant with a string initializer won't parse
- 2026-06-25 — Text-file primitives (`Assign`/`Rewrite`/`Reset`/`Close`) not visible inside a unit
- 2026-06-25 — PChar → string implicit conversion missing in call args (and assignment helper)
- 2026-06-25 — bug: assigning one fixed array to another (`b := a`) does not copy
- 2026-06-25 — Bare `Read`/`Write` inside a method resolves to the console intrinsic, not the method
- 2026-06-25 — Indexed / element proc-value call: `arr[i](args)`
- 2026-06-25 — Indexing a string constant miscompiles (`const RAMP='...'; RAMP[i]`)
- 2026-06-24 — `#$NN` / `#%NN` / `#&NN` char-code literals broken (hex/bin/oct escape)
- 2026-06-24 — feature: Eliah shared selection model — designer ↔ editor link (+ AI rail)
- 2026-06-24 — `{$R-}` / `{$R+}` range-check toggle misread as a resource directive
- 2026-06-24 — bug: new virtual method on TWidgetSet miscompiles its object argument
- 2026-06-24 — bug: i386/arm32 diverge on Int64 via fn-return / record-field / mixed ops
- 2026-06-24 — bug: cross gates red on two pre-existing tests (were masked behind ArgStr)
- 2026-06-24 — Indexed (array) properties + `default` — `property Items[i]: T read G write P`
- 2026-06-24 — feature: Eliah layout tree — window as a nested-TPaned splitter tree
- 2026-06-24 — bug: `{ }` comments do not nest
- 2026-06-24 — feature: Eliah component palette — registry-driven (visual + non-visual tray)
- 2026-06-24 — `Read` / `Write` can't be used as method names (reserved)
- 2026-06-24 — feature: define Eliah's own layout in a streamed .lfm (dogfooding)
- 2026-06-24 — feature: PCL components adopt the `Create(AOwner)` virtual-constructor shape
- 2026-06-24 — feature: Eliah perspectives — saved layouts (Code / Design / Split) + compacting
- 2026-06-24 — bug: `shl` on a 32-bit Integer does not wrap at 32-bit width
- 2026-06-24 — Virtual dispatch hits the wrong VMT slot with many mixed-signature methods
- 2026-06-24 — Distribute native per-arch stable binaries (no FPC/make on install)
- 2026-06-24 — Set literal in a `const` declaration (`const S = [1,2,3]`)
- 2026-06-24 — Untyped parameters not accepted in class methods (work in standalone procs)
- 2026-06-24 — `writeln(StdErr, ...)` goes to stdout — StdErr not connected to fd 2
- 2026-06-24 — bug: ArgStr(i, s) into a managed-string var rejected/broken on cross targets
- 2026-06-24 — bug: a method miscompiles (segfault) depending on surrounding class context
- 2026-06-24 — bug: `Length()` of a dynamic-array function-call result is wrong/crashes
- 2026-06-24 — bug: metaclass construction via GetClass stamps a non-canonical VMT
- 2026-06-24 — bug: compiler hangs (infinite loop) on a method with a nested if/else inside a begin block
- 2026-06-23 — feature: multidimensional typed-constant arrays
- 2026-06-23 — feature: enumerated type with explicit ordinal values
- 2026-06-23 — bug: variant record (case fields) do not share storage
- 2026-06-23 — bug: Length() rejects a non-variable argument (literal / expression)
- 2026-06-23 — feature: named subrange type declaration (`type T = lo..hi`)
- 2026-06-23 — bug: cardinal/longword binary-op promotes to uint64 (FPC: int64)
- 2026-06-23 — bug: `@obj.Method` does not coerce to a `Pointer` (or `TMethod`) argument
- 2026-06-23 — bug: SetLength rejects an indexed array element as target
- 2026-06-23 — Eliah — pane reflow / resizable splitters
- 2026-06-23 — bug: case-insensitivity incomplete — builtins + function calls still case-sensitive
- 2026-06-23 — bug: RTTI .lfm streaming skips constructors → widgets with constructor state broke
- 2026-06-23 — `WriteLn(Boolean)` prints `0`/`1` instead of `FALSE`/`TRUE`
- 2026-06-23 — bug: const section before constructor/destructor not terminated
- 2026-06-23 — feature: class variables (`class var`)
- 2026-06-23 — bug: overload resolution binds a string arg to an earlier integer-param overload
- 2026-06-23 — `const`/value open-array of a managed element loses its length (High = -1)
- 2026-06-23 — AnsiString concat expression as a call argument allocates an ~8 MB static buffer per site
- 2026-06-23 — Anonymous nested fixed array `array[..] of array[..] of T`
- 2026-06-23 — Open-array copy temp leaked a heap block per call
- 2026-06-23 — `High`/`Low` of an ordinal TYPE (e.g. `High(Byte)`, `Low(ShortInt)`)
- 2026-06-23 — bug: `WriteLn(real:w:d)` ignores the field width
- 2026-06-23 — feature: typed constant record initializer (`const r: TRec = (...)`)
- 2026-06-23 — feature: default parameter values
- 2026-06-23 — bug: constant-expression evaluation ignores operator precedence
- 2026-06-23 — bug: assigning a local dynamic-array-of-managed-record to a field drops/frees the elements
- 2026-06-23 — bug: importing a unit whose class calls a sibling method corrupts the importer's name resolution
- 2026-06-23 — riscv32: support record (by-value struct) function results
- 2026-06-23 — `Abs` / `Sqr` System intrinsics missing
- 2026-06-23 — `shr` on a negative 32-bit Integer shifts at 64-bit width (miscompile)
- 2026-06-23 — bug: ParamStr/ArgStr result not usable inline (needs a string variable)
- 2026-06-23 — feature: metaclass-dispatched construction — `classRef.Create` (virtual ctor via a `class of`)
- 2026-06-23 — Demo — console 2048 (screen-lib entertainment + stress test)
- 2026-06-23 — chore: re-pin stable to expose the new System intrinsics to Track B
- 2026-06-23 — bug: Low() missing; High() wrong on non-zero-based arrays
- 2026-06-23 — feature: array constructor `[...]` as an open-array argument
- 2026-06-23 — Demo — GUI Patience / Solitaire
- 2026-06-23 — Eliah M2 — builder integration
- 2026-06-23 — feature: binary integer literals (`%1010`)
- 2026-06-23 — bug: explicit `class(TObject)` base "type not found"
- 2026-06-23 — bug: "Unsupported linear node Kind=10" — AN_CALL in lvalue-address position
- 2026-06-23 — Demo — console Klondike solitaire (user-requested entertainment test app)
- 2026-06-23 — bug: cardinal/signed 32-bit expression width (orphan addendum)
- 2026-06-23 — bug: `WriteLn(real)` default format differs from FPC
- 2026-06-23 — bug: `PChar('')` / `PChar(emptyAnsiString)` yields nil, not an empty C string
- 2026-06-23 — feature: nested (local) functions and procedures
- 2026-06-23 — Capitalized keywords not recognized (case-sensitive keyword table)
- 2026-06-23 — bug: method call on an inline `(expr as T)` is silently dropped
- 2026-06-23 — PCL: mouse-coordinate + keyboard input events
- 2026-06-22 — Compiler warning diagnostics facility
- 2026-06-22 — Declaration pre-scan — whole-section symbol visibility (kill declare-before-use)
- 2026-06-22 — bochan + eduth — headless test driver + validator for garin
- 2026-06-22 — `{$LAZYCASING ON/OFF}` for C imports only
- 2026-06-22 — `@Proc` / proc-value of a `procedure`-typed routine rejected ("unexpected token")
- 2026-06-22 — Demo — Lisp / Scheme interpreter
- 2026-06-22 — Demo — RPN / expression calculator (mini spreadsheet)
- 2026-06-22 — Pinned v36 binary is missing from git — `pinned` symlink dangles
- 2026-06-22 — Progress transition helpers (`claim` / `resolve`)
- 2026-06-22 — Platform Abstraction Layer (PAL): per-platform RTL port at one seam
- 2026-06-22 — SAT solver library — DPLL over CNF (known-instance test app)
- 2026-06-22 — Untyped float const `const X = 1.5;` rejected (and `Single(expr)` value cast)
- 2026-06-22 — Verify `real`/Double bit-consistency across targets (x87 divergence?)
- 2026-06-22 — `var`/`out` open-array param: fixed-array argument passes a wrong length
- 2026-06-22 — PCL OpenGL GLArea demo
- 2026-06-22 — Bare function name in an expression: PXX calls it, FPC/ISO reads the result var
- 2026-06-22 — Float math library (Single+Double) + numerical float demo
- 2026-06-22 — Demo — maze generator + solver
- 2026-06-22 — `SetLength expects a string variable in IR codegen` on a valid array SetLength
- 2026-06-22 — SetLength on a nested sub-array slot through a record field
- 2026-06-22 — `{$mode delphi}` support — incl. the @-optional proc-pointer disambiguation
- 2026-06-22 — Flagship Demo — Midnight Commander-like TUI file browser (libc-free)
- 2026-06-22 — Stable binary: fixed-name overwrite (kill `vN` churn + the dangling-symlink trap)
- 2026-06-22 — PAL file stat metadata
- 2026-06-22 — riscv32: a var parameter forwarded to a nested var parameter loses its address
- 2026-06-22 — Dynamic array as a record field is corrupted (value return + var-param assign)
- 2026-06-22 — Untyped `var` / `const` / `out` parameters
- 2026-06-22 — sat DPLL: bare paramless recursion needs `DPLL()` after the paramless flip
- 2026-06-22 — Bignum library — arbitrary-precision integers (deterministic test app)
- 2026-06-22 — Demo — bytecode VM + assembler (small ISA)
- 2026-06-22 — Process spawning and execution support — libc-free execve pipeline
- 2026-06-22 — Video player audio playback and sync
- 2026-06-22 — PAL network: datagrams, readiness polling, and exact errno semantics
- 2026-06-22 — Extended: formalize as Double alias (or reject)
- 2026-06-22 — Unit impl-section pre-scan silently miscompiles routines (zlib decode broken)
- 2026-06-22 — JSON library — parser + serializer (with a roundtrip test app)
- 2026-06-22 — Directory scanning support — sys_getdents64 (libc-free)
- 2026-06-22 — SetLength on a named dyn-array-alias class/record field misrouted to string path
- 2026-06-21 — Dotted / namespace unit names in `uses`
- 2026-06-21 — Default standard units: `System` + `textfile`
- 2026-06-21 — Char literal in a constant expression: `ConstEval` rejected `'a'`
- 2026-06-21 — Demo — Conway's Game of Life
- 2026-06-21 — Default `Text` file surface and file-handle IO dispatch
- 2026-06-21 — Implicit textfile import misses method-local `Text` in units
- 2026-06-21 — Local typed constants (initialized const inside a routine)
- 2026-06-21 — `obj.Free` rejected — built-in TObject has no `Free` method
- 2026-06-21 — Bug — movslq instruction generated for 64-bit pointer/array field load
- 2026-06-21 — Double literal / value → Single narrowing on assign and argument
- 2026-06-21 — ESP float wiring (xtensa + riscv32 float value model)
- 2026-06-21 — Terminal ANSI library
- 2026-06-21 — Adventure scene asset pipeline
- 2026-06-21 — Valued defines + numeric `{$IF}` evaluation
- 2026-06-21 — Built-in / RTL `Exception` base class
- 2026-06-21 — Calling a procedural-pointer record/class field (`v.Run(args)`)
- 2026-06-21 — `Eof` (standard input) not recognized
- 2026-06-21 — `for-in` over a qualified set member source fails
- 2026-06-21 — Image to ANSI ASCII renderer library
- 2026-06-21 — Text file I/O: `Assign`/`Rewrite`/`Reset`/`WriteLn(f,…)`/`CloseFile` missing
- 2026-06-21 — ESP32: Compiler-Directed ISR and IRAM Support
- 2026-06-21 — Flagship Demo — Console Video Player (libc-free)
- 2026-06-21 — Generator `yield` of a call expression lowers to unsupported IR
- 2026-06-21 — String `Copy` as a no-RTL compiler intrinsic (bootstrap-usable)
- 2026-06-21 — Terminal raw mode and unbuffered input support (libc-free)
- 2026-06-21 — Inc/Dec intrinsic rejects non-bare-symbol lvalue actuals
- 2026-06-21 — examples/chess: PalBackendGetDents64 undefined (PAL backend not linked)
- 2026-06-21 — Single (32-bit float) first-class on the internal-call ABI
- 2026-06-21 — `{$IF DECLARED(...)}` conditional directive support
- 2026-06-21 — 64-bit integer arithmetic for the ESP backends (riscv32 + xtensa)
- 2026-06-20 — String type size mismatch in TypeSize vs codegen copies
- 2026-06-20 — `Length` on implicit-`Self` dynamic-array field fails in methods
- 2026-06-20 — String `Copy` / `Trim` not available
- 2026-06-20 — ConstEval: typed casts + 64-bit folding in const initializers
- 2026-06-20 — C quoted includes do not search the including file directory
- 2026-06-20 — const record param with a managed (dynarray) field crashes by-ref on i386 + aarch64
- 2026-06-20 — feature-compiler-search-path-pcl (Track A)
- 2026-06-20 — Member access on a function-call result (`f(args).field`)
- 2026-06-20 — Stack frame corruption on inline string concatenation assignments
- 2026-06-20 — Hashing library — CRC32 / MD5 / SHA-256 (known-vector test app)
- 2026-06-20 — bug-subclass-field-offset-calculation (Track A)
- 2026-06-20 — Hardcoded 'TMyClass' name clash in compiler type resolution
- 2026-06-20 — Cross-target float function results
- 2026-06-20 — RTTI offset corruption when class/record definitions contain large static arrays
- 2026-06-20 — General `TypeName(expr)` reinterpret cast (named record/class/pointer)
- 2026-06-20 — Integer → Float assignment / coercion missing the int→float conversion
- 2026-06-20 — Pointer cast on custom Char pointer aliases fails to skip string length prefix
- 2026-06-20 — `IntToStr` not available
- 2026-06-20 — RTL image bitmap library
- 2026-06-20 — RTL gaps — string/number conversion + a bit-set type (surfaced by the demos)
- 2026-06-20 — SetLength rejects dynamic-array function result
- 2026-06-20 — Soft-float library (IEEE-754 double kernels + conversions)
- 2026-06-20 — `for-in` inside a method corrupts a dyn-array global declared after it
- 2026-06-20 — Track B library test suite
- 2026-06-20 — Empty class descendant shorthand
- 2026-06-20 — Compression library — Huffman / LZ77 (roundtrip test app)
- 2026-06-20 — PNG decoder library
- 2026-06-20 — Builtin `Val` mis-lowers — wrong error code + segfault
- 2026-06-20 — Whole dynamic-array variable assignment (`b := a`) unsupported on i386 + aarch64
- 2026-06-20 — Assigning a managed string (tyAnsiString) into a frozen `string` (tyString) miscompiles → segfault
- 2026-06-20 — `shl` / `shr` in a constant expression not accepted
- 2026-06-20 — Language gaps surfaced by the demo apps (sudoku / sieve / chess)
- 2026-06-20 — Function `Result` (float) read-modified inside a loop miscompiles to 0
- 2026-06-20 — Pinned stable reads LIVE builtin RTL source — track A WIP breaks track B
- 2026-06-20 — `for-in` over an implicit-`Self` array field fails in methods
- 2026-06-20 — `for-in` over a qualified member-access source (`obj.field`, `Self.field`)
- 2026-06-19 — Proc-local managed record not zero-initialised on entry → first-call miscompute
- 2026-06-19 — `array of const` (TVarRec) parameter support
- 2026-06-19 — Latent: whole-record array-element copy in main-program body emits store no-ops
- 2026-06-19 — `uses sysutils` is hard-skipped — a real lib/rtl/sysutils can't load
- 2026-06-19 — `SetLength` on a `var` dynamic-array parameter (cross-cutting ABI)
- 2026-06-19 — 64-bit gaps in pinned v9: `xor` operator, large shifts, 64-bit hex literals
- 2026-06-19 — `Length()` of a pointer-dereferenced frozen `string` returns 0 on the cross targets
- 2026-06-19 — Context-sensitive runtime crash: record-returning fn with nested loops over dynarray fields
- 2026-06-19 — Xtensa Call0 / non-windowed frame >128 bytes silently truncates
- 2026-06-19 — Interface reference counting (IInterface / ARC)
- 2026-06-19 — Can't pass a function-result temporary to a const/by-ref record param
- 2026-06-19 — Builtin write/writeln matched case-sensitively (only lowercase resolves)
- 2026-06-19 — Text-assembler codegen helpers (`EmitAsm386` / `EmitAsmX64` …)
- 2026-06-19 — Component streaming + LFM loading on the cross targets
- 2026-06-19 — Parallel tracks: pin libraries/demos to a "stable" compiler
- 2026-06-19 — Cross-target language-feature parity (Intel + ARM)
- 2026-06-19 — Demo — Sudoku (solver + generator + interactive play)
- 2026-06-18 — ESP ISA baseline + software fallbacks for older parts
- 2026-06-18 — `for x in ...` iteration — FPC-exact (arrays, sets, strings, enums, enumerators)
- 2026-06-18 — Float Str / Val
- 2026-06-18 — Explicit type-casts (`Char`/`Boolean`/`String` and a general `TypeName(expr)`)
- 2026-06-18 — Transcendental math library (Sqrt/Sin/Cos/Ln/Exp/ArcTan/Power/Pi/Abs)
- 2026-06-18 — ESP32 managed strings (tyAnsiString runtime on xtensa + riscv32)
- 2026-06-18 — ESP32 bare-metal boot profile (no IDF)
- 2026-06-18 — `is` / `as` / `Supports` — runtime class type-tests
- 2026-06-17 — Cross external-C-call ABI breadth (float/Int64 args, float returns, stack align)
- 2026-06-17 — ESP32 managed-feature port (xtensa + riscv32, qemu-validated)
- 2026-06-16 — Cross-target codegen gaps (deferred v1 shortcuts)
- 2026-06-16 — Short-circuit boolean evaluation (`and` / `or`)
- 2026-06-16 — Multidimensional fixed arrays
- 2026-06-16 — Generators and `yield` (the coroutine on-ramp)
- 2026-06-16 — Typed constant arrays (initialized const arrays)
- 2026-06-16 — Full parameter/result ABI on cross targets
- 2026-06-16 — Managed aggregate locals on cross targets
- 2026-06-16 — Procedural types and method pointers
- 2026-06-16 — Synthetic all-features stress test (cross-target conformance)
- 2026-06-16 — Codegen miscompiles nested integer-array index load width under register pressure
- 2026-06-16 — Async, coroutines, and `yield`
- 2026-06-16 — Cross compiler.pas probe walls
- 2026-06-15 — Cross self-host: AArch64 generated compiler runs under QEMU
- 2026-06-15 — Copy-on-write for managed strings on cross targets (i386 / ARM32 / AArch64)
- 2026-06-15 — Cross self-host: ARM32 generated compiler runs under QEMU
- 2026-06-15 — Cross self-host: i386 generated compiler runs under Linux
- 2026-06-15 — Cross self-host bootstrap (compiler.pas → byte-identical under QEMU)
- 2026-06-14 — ARM32 text-assembler (`EmitAsmArm32`) for cleaner ARM32 codegen
- 2026-06-14 — RISC-V (RV32) text-assembler (`EmitAsmRv32`) for cleaner riscv32 codegen
- 2026-06-14 — Xtensa text-assembler (`EmitAsmXtensa`) for ESP32
- 2026-06-14 — AArch64 text-assembler (`EmitAsmA64`) for cleaner ARM64 codegen
- 2026-06-14 — i386 text-assembler (`EmitAsm386`) for cleaner x86-32 codegen
- 2026-06-14 — Split `asmtext.inc` monolith into per-platform files + fix emitter tests
- 2026-06-13 — Full Int64 codegen for i386
- 2026-06-12 — ESP-IDF integration: riscv32 (ESP32-C3) end-to-end
- 2026-06-12 — Xtensa windowed ABI codegen variant (for ESP-IDF interop)
- 2026-06-12 — Typed instruction encoders for codegen
- 2026-06-12 — Self-hosted x86-64 backend miscompiles calls with many parameters
- 2026-06-12 — Relocatable ELF32 object writer (.o for ESP-IDF linking)
- 2026-06-12 — Compile target: ESP32 / embedded
- 2026-06-12 — Finalize managed values on exception unwind
- 2026-06-12 — Promote managed AnsiString from opt-in to default
- 2026-06-12 — Float + Variant codegen on cross targets
- 2026-06-11 — Cross-architecture compiler bootstrap (AArch64/ARM32 → byte-identical self-compile)
- 2026-06-11 — Exception runtime on cross targets (i386 / ARM32 / AArch64)
- 2026-06-11 — Compile target: ARM32 Linux
- 2026-06-11 — Thread-safe layout RTTI helper races
- 2026-06-11 — Target-independent layout RTTI (Tier B)
- 2026-06-11 — Cross-target managed aggregates (records + dynamic arrays)
- 2026-06-10 — Compile target: ARM64 / AArch64 Linux
- 2026-06-10 — Compile target: i386 (32-bit x86 Linux)
- 2026-06-10 — QEMU cross-target test environment
- 2026-06-10 — Relative/absolute path support in `uses`/`includes`
- 2026-06-06 — Record-valued operator result is miscompiled (aggregate-return ABI)
- 2026-06-06 — Wire `progress.sh check` into a make target
- 2026-06-06 — By-value record args >8 bytes truncate (and operator operand edges)
- 2026-06-06 — On-demand `BOARD.md` kanban grid
- 2026-06-06 — C `__attribute__((packed))` / `aligned` ignored → field-offset drift
- 2026-06-06 — Managed by-ref AnsiString params: store-through-var no-ops / segfaults
- 2026-06-06 — `read` consumes a whole line like `readln`
- 2026-06-06 — Unified syscall-free heap allocator
- `next()` over an iterator argument returns the default
- -O3 inlining deletes a frame the stack-frame intrinsics can observe
- IRLowerCallArg: box scalars passed to Variant parameters
- SizeOf of a qualified builtin type name
- NilPy: ClassVar storage, next(), counter shim, lambda default_factory
- `type PI = ^Integer` — and then `PI(p)^` is a call to math's `Pi`
- A bare `inherited;` does not forward the caller's arguments
- NilPy: raise def/method parameter limit past 4
- Python `<<` and `>>` cost one bignum multiply per bit shifted
- TObject.InstanceSize and TObject.ClassNameIs
- A nested include is silently dropped
- bug-a-a-discarded-managed-function-result-is-never-released
- NilPy: range for-loop with a pre-existing VARIANT loop variable corrupts it
- `array ... absolute x` is accepted, aliases nothing, and says nothing
- A routine's `label` section must come last, or the routine will not parse
- NilPy: list type v1 (pylib TPyList, literals, subscripts, methods, len)
- The Self shift forgets `puntyped`, so a method parameter is mislabelled
- sysutils and pylib both declare `Exception`, and their shapes had diverged
- Type-helper methods on a computed receiver
- The detachment guard tested its own runner, not the predicate
- A lifted nested routine's SIGNATURE cannot see the enclosing routine's local type
- `q := TQ(r)` segfaults; `q.x := TQ(r).x` does not
- `sizeof(us + 0)` reports 2, not 4 — binary ops skip the integer promotions
- A nested record's field cannot see a sibling nested type
- NilPy: bool/char param spill wrote 4 bytes into a 1-byte slot (SILENT, then SIGSEGV)
- bug-n-a-failed-overload-retry-leaves-a-drained-argument-behind
- NilPy lexer: hex/octal/binary int literals, triple-quoted strings, string line counting
- A generic parameter constraint is counted as a type body
- A class-reference operation name hijacks a record field
- A typed procvar constant can be declared and assigned, but never called
- Shared-parser hook for NilPy str methods (filed for traceability)
- NilPy: str class field registered as tyString = inline string[N] semantics (garbage reads)
- An anonymous procedural type is not accepted anywhere
- `Continue` inside a `for-in` loop hangs the program
- A helper's const was visible as a bare global
- Variant-returning functions (hidden-dest ABI) + variant bool printing
- `return None` from a str-returning def yielded the text 'None'
- Shared parser: extend PyExprMode suppression to tkShl/tkXor
- NilPy: @dataclass v1 (decorator syntax, annotated scalar fields, defaults)
- Indexing a parenthesised string compiles clean and segfaults
- A routine-local procedural type makes the parser consume the rest of the program
- Storing a class into a Variant did not build on i386 or aarch64
- `for x in <named set type>` is refused — by an error naming the kinds it refuses
- NilPy: bitwise operators + augmented assignment