I think the best way of dealing with external dependencies such as `scala.Product` would be to declare corresponding ref trees in helper methods. E.g. `def scalaProduct = Select(Ident(TermName("scala")), TypeName("Product"))`.