discardValue is now a free function
implicitConvTo -> dcast