Illegal/accidental use of the "/" character is not checked in the Version: tag (and possibly others) when RPM reads the spec file, causing it to fail later in the build process. Should be changed to check just like "-" is already checked for.
The current design of rpm says Everything but '-' is permitted in version/release. even though, as we both know, certain characters like "%/$:.! \t\r\n" are bound to produce surprises when version is evaluated in different contexts. Without a more explicit definition of what is permitted in version/release, it's impossible to implement a better check than is what already implemented.