Need a maintainer for typo correction

I’ve been working my way through the Clang issue list doing triage and I’ve noticed we have a number of bugs related to typo correction. Things like:

and plenty more. However, we do not have anyone actively in charge of maintaining this area and the original author seems to have moved on from the community (at least, I don’t see them posting PRs or reviewing changes). What’s more, our stable of active maintainers don’t have the expertise/bandwidth to cover this area of the compiler.

Obviously, having unmaintained code in the compiler is a bad thing. Is anyone interested in volunteering to become the maintainer for typo correction? You’re not volunteering to fix all of the issues, of course. It’s that we need someone we can reach out to for help with reviewing fixes, answering questions while we’re triaging, etc. Of course, if you want to volunteer to fix some of the issues, that’s greatly appreciated as well. But this is about a lack of expertise within the community more than anything.

CC @rnk as the original author was a Googler, so presumably this functionality is of interest to Google

4 Likes

We talked about this a bit at today’s Clang Area Team meeting and it sounds like the original author is no longer available and Reid is unaware of any resources within Google for maintaining this. However, it was also noted that the issues almost all stem from delayed typo correction and not typo correction in general. So one option if we don’t find anyone who can maintain typo correction right now would be to deprecate + disable delayed typo correction by default with intent to remove in the future.

1 Like

Hello, I am interested in this.
Should I start by looking through the codebase and fixing bugs?

1 Like

Thank you! Yes, looking for bugs in the code base is a great start. Here’s a search that shows at least some of the bugs: GitHub · Where software is built

The tricky bit is: it’s sometimes hard to tell whether the underlying issue is with the typo correction machinery itself or not because it’s often easy to work around bugs individually by looking for places to early return. Some bugs can be fixed by picking better typo corrections, some bugs can be fixed by early returns, and some issues are that the compiler wasn’t expecting to get there in an error condition (e.g., Fix crash with delayed typo correction by AaronBallman · Pull Request #140571 · llvm/llvm-project · GitHub)

Thank you very much for your guide!
I will check the issues you listed :eyes:

1 Like

Thank you! I am interested in this as well

1 Like