refactor special handling in evalf_(add, mul)

Just some minor refactoring. That C-issue is strange.