The whole descriptor initialization process is very complicated explicitly to deal with initialization ordering issues, though bugs are certainly still possible. I would not know exactly where to look -- if I did I would have fixed it. :)But the errors you mentioned don't really look like they'd be caused by incorrect initialization ordering.
Sorry, I don't have any ideas. If you could send me your changes as a code review on codereview.appspot.com, I could take a look and see if I spot any problems.
One quick question, if I remember correctly there is a call to a parser function
early on in the code. Is there a debug function which would dump the result
of the parsing?