Back to wiki

RCS History

/ TOP / todo.mdwn

Revision 1.11

Random standard-conforming known things that should be added to pcc:

- Currently all known usable C99 stuff is added.

Other stuff that are for compatibility:

- Support empty initializers.  Not allowed by C99, but some people use it since gcc accept it.

- Support unnamed unions. Not allowed by C99, but people sometimes tend to use it.

Internal cleanups:

- Cleanup prototype parsing and checking.

- Ensure that the instruction matcher do not assume that it will reclaim a register if a direct match of something else than a register is done as a leg node.
  This may require additions to visit and su fields in table and node.

- Teach the register allocator how to allocate multiple registers at once. This is not the same as register pairs; pairing is handled as a separate register class.
  This is used for example when a type is not supported by the underlying hardware, like long long on i386 or long on pdp11.

GCC compatibility:

- PCC has GCC compatibility enabled by default, but there are a number of language constructs that may not be fully implemented, like attributes. 

- There's similar work needed in the C preprocessor area. #pragmas are the first thing that comes to mind.

Powered by rcshistory.cgi 0.3