2026-10-20 Christopher Bazley * support/valdiag/tests/bug-3053.c: Compile the DS390 va_list pointer reproducer without executing its undefined behaviour (bug #3053). 2026-10-20 Christopher Bazley * support/valdiag/tests/bug-3037.c: Compile the reported inline extern reference and diagnose the duplicate parameter name from the discussion (bug #3037). 2026-10-20 Christopher Bazley * support/valdiag/tests/bug-3016.c: Test diagnostics for the original malformed file-scope array bound (bug #3016). 2026-10-20 Christopher Bazley * support/valdiag/tests/bug-2860.c: Compile both reported identifier-list declarations without executing the function with no return statement (bug #2860). 2026-10-20 Christopher Bazley * support/valdiag/tests/bug-2843.c: Test the absence of an unreachable-code diagnostic for the reported switch (bug #2843). 2026-10-20 Christopher Bazley * support/valdiag/tests/bug-2660.c: Test the absence of a spurious pointer-type diagnostic for a function address cast in a static aggregate initialiser (bug #2660). 2026-10-20 Christopher Bazley * support/regression/tests/bug-2497.c: Test a static function declared through a function typedef and called through a pointer (bug #2497). 2026-10-20 Christopher Bazley * support/valdiag/tests/bug-2152.c: Test overflow diagnostics for the reported delay calculation (bug #2152). 2026-10-20 Christopher Bazley * support/valdiag/tests/bug-2147.c: Test diagnostics for excess scalar initialisers (bug #2147). 2026-10-20 Christopher Bazley * support/valdiag/tests/bug-1102.c: Test diagnostics for an initialiser for an incomplete structure (bug #1102). 2026-10-20 Philipp Klaus Krause * support/regression/tests/bug-4123-2.c: Further tests for z80 peephole optimizer rules, towards fixing bug #4123. * src/z80/peeph.def: Remove peephole optimizer rule for which no tests were found. 2026-10-20 Maarten Brock * src/mcs51/gen.c (genPointerPush): fix mov r1,@r0 bug found in bug-4131.c 2026-10-20 Christopher Bazley * src/SDCCval.c: Preserve signed integer values when converting a constexpr initialiser from integer to float type (bug #4144). Obtain the value as double through floatFromVal, which respects the source integer type's signedness. Leave integer conversions unchanged. * support/regression/tests/bug-4144.c: Test six failing return-context conversions and six cases that pass before and after the fix. 2026-10-20 Christopher Bazley * src/SDCC.y: Diagnose non-integer subscripts in designated initialisers using E_IDX_NOT_INT (bug #4143). * support/valdiag/tests/bug-4143.c: Test subscripts of floating-point type, negative and nonconstant subscripts, ordinary array subscripting and valid test cases with integer expressions and explicit casts. 2026-10-20 Christopher Bazley * src/SDCCicode.c (geniCodeStruct): Apply inherited volatile qualification to the element type of array members, including arrays of pointers (bug #4161). * support/valdiag/tests/optional-volatile.c: Test volatile pointer reads and valid single-read copies. Include the reported pointer array member example. 2026-10-20 Philipp Klaus Krause * support/regression/tests/bug-4123-2.c: Further tests for z80 peephole optimizer rules, towards fixing bug #4123.