Since the last set posted, I've taken Timothy's review on board, discovered the double life of var->data.location and managed to find a balance between base/index issues that doesn't regress. This should work a lot better, despite increasing the side of ir_variable. Dave.