Use PosX.from factory methods, because "you cannot use macro implementations in the same compilation run that defines them".  If scalactic were in a separate compile, this would go away.