It's a variable. Indeed it can change between uses within the same function, as I said last time this was discussed. That wasn't clear. The gimplifier has the option of getting it from the type node. Sure. That's indeed what it does now. But remember that we're talking about both the node formats for GIMPLE and GENERIC.