Skip to content

Conversation

@dbalatoni13
Copy link
Contributor

@dbalatoni13 dbalatoni13 commented Dec 18, 2025

Additions:

  • Typedefs defined in functions, inlines, function blocks and structs, omitting ones generated by the compiler
  • Structs defined in subroutine blocks (I'm not sure if that's practically possible, GCC seems to propagate them to the function body)
  • Handle override, const, volatile, virtual, static modifiers on functions
  • Omit the this parameter in member functions, moving its register location into a comment
  • Correctly show the parent class in overriden GCC functions, putting the original class of the virtual function in a comment instead
  • Properly name GCC destructors
  • Omit return type of constructors and destructors
  • Static struct members
  • Fix inline param duplication bug
  • Add fallback for detecting the parent of functions in PS2 MWCC
  • Demangle MWCC and GNUv2 function names (because of operator overrides)
  • Correctly recognize MWCC typedefs as static struct members
  • Keep the correct order of blocks and inlines
  • List member functions inside structs

See this dump as an example.

Detect subroutine parent class and constness
Support nested typedefs
@encounter
Copy link
Owner

No real concerns from a cursory glance. Thanks a lot!

@encounter encounter merged commit 367deae into encounter:main Dec 31, 2025
16 checks passed
@dbalatoni13
Copy link
Contributor Author

Nice, is the RefCell thing really okay? I couldn't find a better solution, I'm a rust noob though

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants