SPDX-License-Identifier: CC-BY-SA-4.0 copyrights: - Copyright (C) 2020 embedded brains GmbH & Co. KG enabled-by: true functional-type: function links: - role: interface-function uid: ../if/alias rationale: null references: [] requirement-type: functional text: | When argument ${../if/alias:/params[0]/name} is a name of a function, and the macro ${../if/alias:/name} call is in the same compilation unit as the function, and the macro is not used in block scope, and the macro is used in this form: `` newname([argument-type-list]) ${../if/alias:/name}(oldname)``;, and the ```` and ``argument-type-list`` match the signature of the function ``oldname``, and the code is compiled with the GNU C compiler, the ${../if/alias:/name} macro shall cause the compiler to create an additional name (``newname`` in the syntax) for the function given as argument ${../if/alias:/params[0]/name}. type: requirement