CTFE: copyLiteral() returns UnionExp

Refactor only.
I'd like to keep the "quick return" flow style. Because it would reduce the code reading cost so we don't have to consider the code after the big "if - elseif - else" chain.