operators: use deleted function instead of static_assert

static_assert leads to incorrect SFINAE behavior. On the other hand
static_assert allows the best diagnostics output. Until C++ has a better
mechanism use a deleted function instead that corrects the SFINAE
behavior, with the tradeof that the diagnostics output is slightly
worse.

Signed-off-by: Matthias Kretz <kretz@kde.org>