1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-17 09:07:32 +00:00
cc65/doc/BUGS

30 lines
1.2 KiB
Plaintext
Raw Normal View History

List of known bugs that will not get fixed before any new major release:
* The compiler does not detect if part of an expression evaluated
with && or || is constant. Since the expression evaluation is also
used for the preprocessor, this defeats the use of
#if defined(x) && defined(y)
* Initialization of local variables with compound data types is not
possible.
* The assembler/linker do not have special handling for the "jump indirect"
bug of the NMOS 6502 CPUs. This bug will cause the CPU to behave
erratically if the address argument crosses a page.
Introduced with version 2.5:
* Use of "goto" to jump into or out of blocks that declare local variables
will create programs that crash, since the stack is not corrected. The old
stack correction code was removed because of the restructuring of the
symbol table stuff and was not reintroduced because it was ugly anyway,
did not work with the new symbol table code, and should be unnecessary as
soon as local variables are allocated in one chunk on function entry.
* Register variables are currently unavailable. The command line switches
and the "register" keyword is still accepted, so this should not harm
existing programs.