Two things:
1) Is (4+4) a valid expression? I thought we didn't allow math/operators except for simple things like string length.
2) MapServer 5.0 only exhibits the complaint about the symbolset
mapobj.setSymbolSet('test_symbols.set')
IOError: loadSymbolSet(): Unable to access file. (test_symbols.set
I think what was happening is setExpression was throwing an error but not returning NULL. The error sticks around until another error that *did* return NULL was made (the complaint about not finding the symbolset). If I'm not mistaken, this expression is now valid in 5.0, and MapScript properly throws the error for the missing symbolset. Declaring this one fixed and cc'ing Steve to see if he has any comment.