Hi! I’m Erick

I’m a software engineer interested in compilers and programming languages.

Are clang-doc and ExtractAPI Compatible?

At LLVM Dev Meeting 2025, I was asked whether Clang ExtractAPI could be used in clang-doc’s JSON generation. My answer was, because of the way that clang-doc uses templating, ExtractAPI’s JSON output wasn’t compatible with clang-doc. This actually isn’t entirely true and I wanted to clarify that answer since these tools actually do a lot of similar things, but they differ heavily architecturally. It also might be helpful to clarify since the LLVM project now has at least two tools that directly document source code into JSON. Spoiler: They’re compatible. Sort of. ...

December 29, 2025

Google Summer of Code 2025: Part One

I was selected as a contributor for GSoC 2025 under the project “Improving Core Clang-Doc Functionality” for LLVM. My mentors for the project are Paul Kirth and Petr Hosek. They let me know there was a lot to improve, and they were right! Introducing Clang-Doc Clang-Doc is a tool in clang-tools-extra that generates documentation from Clang’s AST. Prior to this summer, it emitted documentation in Markdown, HTML, and YAML. The project started in 2018 but major development eventually slowed. Recently, there have been efforts to get it back on track. ...

Google Summer of Code 2025: Part Two

In the second phase of my GSoC project, I focused on Clang-Doc’s comment support. Robust comment support is essential for documentation. Clang’s comment parser understands a variety of different comments, but either Clang-Doc didn’t display them well or didn’t recognize them. Grouped and Ordered Comments Comments weren’t ordered in Clang-Doc’s HTML documentation. They were just displayed in whatever order they were serialized in, which is the order that they’re written in source. This meant comments would be extremely difficult to read - you don’t want to search for another parameter comment after reading the first one, even if they’re expected to be written in order in source. ...

Google Summer of Code Proposals

I thought it would be useful to others if I shared my accepted GSoC proposals. For some reason published Google Docs don’t show headers so the title headers are missing. Both were accepted by LLVM. Here is my proposal for GSoC 2023. You can see my 2023 project summary with a link to the final report here. Here is my proposal for GSoC 2025. Here’s my proposal for Unicode that I submitted in 2025. I got selected for LLVM instead but I did have a chat with the project mentor before results were announced. ...