object: Make INIT() a compound statement master
authorTobias Brunner <tobias@strongswan.org>
Thu, 29 Sep 2022 09:36:00 +0000 (11:36 +0200)
committerTobias Brunner <tobias@strongswan.org>
Thu, 29 Sep 2022 09:36:00 +0000 (11:36 +0200)
commite0fd191f314f1b3e2ec4ebe18de99df338d2e8d0
tree1d054e427dc073f190e13330900628be5f9de98c
parent3da4ac8ef632744e23a65159489ead19a1e4dfb9
object: Make INIT() a compound statement

This forces the use of a semicolon after INIT() and makes existing ones,
which was the case for basically all instances, necessary so e.g.
sonarcloud won't complain about an empty statement after every one of
them.

By evaluating to the allocated object, it would theoretically also allow
constructs like this:

  struct_t *this;

  return INIT(this,
   .a = x,
   .b = y,
  );

or this:

  array_insert(a, ARRAY_TAIL, INIT(this,
    .a = x,
    .b = y,
  ));
src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c
src/libstrongswan/utils/utils/object.h
src/sw-collector/sw_collector_history.c