The compiler's right. The standard says that the % operator can only be applied to integral types.

You've clearly never heard of a dictionary. Most (if not all) english language dictionaries...