In the meantime, I realized that there are a couple of patches that haven't landed yet that you'll want to apply locally before working on this. (I sort of imagined that they would land before someone expresses interest in working on this, but you jumped on it quicker than that :)).
Anyways, so the first thing to do would be to apply these two patches locally, with
hg import <url> (or, if you use git, let me know and I can give you alternative instructions):
With that done, here's an outline for making the changes for this bug:
- Change the declaration of
- Rename its enumerators as suggested (e.g.
- Use our Searchfox code search tool to locate existing usages of the enumerators. You can click on one of them in the declaration linked above, and click on "Search for enum constant" in the popup menu. Change existing usages to reflect the new enumerator names, and the fact the enum is scoped now (e.g.
Once that's done, build the code again with
mach build to make sure everything still compiles after the changes. I believe the changes described above should be sufficient to make things compile, but there might be a few places where we need to insert a cast or something -- if compiler errors come up and you're not sure how to solve them, feel free to ask here!
Once you have a patch that's compiling, you can submit it for code review; instructions for that can be found here.