fixing typeinf problem in approximate promote()s. fixes #2098