We were (still) not correctly marking the C++ tree structs. This patch fixes that and 1) adds MARK_TS_TYPE_NON_COMMON, because we needed it. 2) sorts the order of marking nodes, so it's a little easier to figure where to put new ones. 3) reformats & sorts the common tree_node_structure_for_code to be a little clearer in what it's doing. (these switch statements seem a fine exception to the usual formatting rules) I'll commit to trunk shortly, as the non-c++ bits are sufficiently obvious. nathan -- Nathan Sidwell