Is this an internal inconsistency error? Could we make it more verbose:

Distribution.Cabal.Install.installUnpackedPackage: internal error: semaphore was given but Cabal version < 1.19