qapi: Inline QERR_INVALID_PARAMETER_TYPE definition (constant value)
authorPhilippe Mathieu-Daudé <philmd@linaro.org>
Tue, 12 Mar 2024 14:13:39 +0000 (15:13 +0100)
committerMarkus Armbruster <armbru@redhat.com>
Wed, 24 Apr 2024 07:50:58 +0000 (09:50 +0200)
commitaaeafa5090c8d006d7c39b4e11bcfb8515ef1ece
treee0075f555ac0562395b28432dc13f5d60e6e5449
parentc6f5d406e1ace1e3d7697e085024a3c7b93d6db5
qapi: Inline QERR_INVALID_PARAMETER_TYPE definition (constant value)

Address the comment added in commit 4629ed1e98
("qerror: Finally unused, clean up"), from 2015:

  /*
   * These macros will go away, please don't use
   * in new code, and do not add new ones!
   */

Mechanical transformation using the following
coccinelle semantic patch:

    @match@
    expression errp;
    expression param;
    constant value;
    @@
         error_setg(errp, QERR_INVALID_PARAMETER_TYPE, param, value);

    @script:python strformat depends on match@
    value << match.value;
    fixedfmt; // new var
    @@
    fixedfmt = f'"Invalid parameter type for \'%s\', expected: {value[1:-1]}"'
    coccinelle.fixedfmt = cocci.make_ident(fixedfmt)

    @replace@
    expression match.errp;
    expression match.param;
    constant match.value;
    identifier strformat.fixedfmt;
    @@
    -    error_setg(errp, QERR_INVALID_PARAMETER_TYPE, param, value);
    +    error_setg(errp, fixedfmt, param);

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240312141343.3168265-7-armbru@redhat.com>
Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
qapi/qobject-input-visitor.c
qapi/string-input-visitor.c
qom/object.c