# Planned features

- Simple integer expressions + - * / | & ~ ()

- Make user-defined types more powerful. Some ideas: bitmask fields (for app_flags), choice fields (for app_version), conditional constructs.

- Attributes, so you can also use rdef scripts to add attributes to your files instead of (or in addition to) resources.

- In "auto names" mode, the decompiler currently does not use the enum symbol table. So if two resources have the same name and that name is a valid C/C++ identifier, the decompiler will add two conflicting symbols to the enum statement. This can also happen when multiple input files have conflicting resource IDs.

- Support for the built-in types point, rect, and rgb_color is hardcoded into the decompiler. The other built-in types--app_flags, mini_icon, etc--are not supported at all. It would be better to use the type symbol table for this as well. Then the decompiler can also support user-defined types (although these type definitions must be provided to the decompiler somehow.)

- Right now, archives are treated as messages. Maybe we should give them their own type, B_ARCHIVED_OBJECT (type code 'ARCV').