Fix case of no extra-constraints wildcards

When there is no extra-constraints wildcard, completeTheta should return the
annotated constraints as final theta instead of the inferred, e.g.

    foo :: Num a => a -> _
    foo x = x

We should return (Num a), not [], as without an extra-constraints wildcard, no
extra constraints can be inferred, so inferred_theta must be empty anyway.