camden-smallwood
camden-smallwood
I'm currently working on a naive pdb-to-cpp decompiler, and there's a number of things that I've run into, but [this one in particular](https://github.com/camden-smallwood/pdb-decompiler/issues/8) doesn't appear to have been addressed in...
Find the corresponding source files of top-level user datatype symbols (`S_UDT`). Currently, `typedef` are not loaded correctly due to being replaced with their underlying type at compile time. The source...
Noting that a header file is of extension `.h`/`.hpp`/`.inc`/`.inl`/etc, and a source file is of extension `.c`/`.cpp`/`.cc`/etc: 1. Currently all header files are lacking `#include` statements. 2. Source files also...
Currently there appears to be no way to determine what source file and line a global symbol belongs to, which particularly afflicts decompilation of some user datatypes. Not all PDB...
The current C++ AST (if you can even call it that) is extremely non-optimal. It would be ideal to leave the PDB data in place for as long as possible...
C++ symbols store their namespace. Currently, the namespace is left inline in the symbol when decompiled. It would be ideal to determine where namespace are used and construct namespace blocks...
Float constants that have a value appear to have a non-standard format? To be determined.
Currently there is no differentiation between a constant variable reference and a declaration. This needs to be resolved. Determine when to include constant declarations in source files.
Type definitions do not store the names of their function parameters in the function declaration. In order to obtain them, the function definition must be traversed in the module.
Field lists do not store inline unions and structures as unions and structures, instead are only denoted by having a field offset that collides with another field offset. Ideally, when...