I wouldn't say that. Volatibility restrictions based on immutable functions apply to many concepts similar like expression pushdowns to make for deterministic results. The SQL spec takes things on the safe side.
I would to have a mechanism for safe replacement of triggers of type
if TG_TYPE = 'INSERT' THEN
NEW.inserted := CURRENT_TIMESTAMP;
ELSE IF TG_TYPE = 'UPDATE' THEN
NEW.updated := CURRENT_TIMESTAMP;
..
But I understand, so current SQL spec design is safe.