better conformance to C best practices