storing of type before implicit casts (2 TODOs left)