splice engine: return negative for error