> if (TREE_CODE (TREE_TYPE (op)) == COMPLEX_TYPE) > DECL_COMPLEX_GIMPLE_REG_P (new_var) = 1;
You should not have set this; you're taking the address of the variable after all. Thanks. I was just copying that code without full understanding of what it was doing. But where is that flag cleared when TREE_ADDRESSABLE is set? I can't find anything that ever clears it? Well, since you essentially shouldn't have used ought but create_tmp_var, that point is moot. No, there's still the location stuff, which does still seem relevant.