more minor C semantics fixes