I’m willing to add a new language in clang.
I’d like to know what are the best practices before starting the actual implementation.
I’m already (kind of) familiar with clang/llvm, but I don’t want to waste an excessive amount of time in trying lousy options.
I synchronized clang on my local repository, and I read that http://llvm.org/docs/tutorial/LangImpl1.html.
I’d like to get feedbacks from people who actually did that kind of work, and know which are the pitfalls.
To make it short, these are my questions:
Branching strategy : what is the best way? Should I branch the whole llvm repository?
Code writing: Should I start writing code directly, targeting a small subset of the target language and iterate from that? Should I instead think a lot about my stuff and consider writing code once I’m sure I’ll be able to compile the entire language?
Commit : considering I’ve written a really good clang extension, and I want that to make it public. How can I merge to the trunk?