store precompiler traversal state directly in modules