Files
Kirby Kuehl 06db2a163c ccode: honor r2ghidra.casts instead of forcing casts off
ccode mode called setNoCastPrinting(true) after applying r2ghidra.casts, so
`e r2ghidra.casts=true` was silently overridden and semantically necessary
truncations disappeared. For

  long cast_test(long x) { return (long)(int)x + 0x100000000L; }

the output was `arg1 + 0x100000000`, which evaluates to 0xffffffff at
0xffffffff instead of the 0x1ffffffff the binary produces.

Let r2ghidra.casts decide: ccode keeps only the identifier cleanup and the
hidden implied ZEXT/SEXT extensions and no-convention prototype style. With
ccode=true,casts=true the printer now emits
`(int64_t)(int)arg1 + 0x100000000`; with casts=false it stays cast-free as the
option documents, and ccode=false output is unchanged.

Regression in test/db/extras/r2ghidra_ccode with the compiled fixture.
2026-10-12 19:18:42 +02:00
..
2022-07-15 19:01:40 +02:00
2022-07-15 19:01:40 +02:00
2022-07-15 19:01:40 +02:00
2019-12-17 11:05:14 +01:00
2019-12-17 11:05:14 +01:00
2019-12-17 11:05:14 +01:00
2022-07-30 18:00:26 +02:00
2020-08-25 23:28:14 +02:00
2020-08-25 23:28:14 +02:00
2021-01-25 00:54:25 +01:00
2021-01-25 00:54:25 +01:00