more minor C semantics fixes

**do not review yet**