diff options
Diffstat (limited to 'spec/rtems/basedefs/if/typeof-refx.yml')
-rw-r--r-- | spec/rtems/basedefs/if/typeof-refx.yml | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/spec/rtems/basedefs/if/typeof-refx.yml b/spec/rtems/basedefs/if/typeof-refx.yml new file mode 100644 index 00000000..7532ffef --- /dev/null +++ b/spec/rtems/basedefs/if/typeof-refx.yml @@ -0,0 +1,37 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +brief: | + Returns the type of a pointer reference of the specified level to the specified type. +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +- Copyright (C) 2014 Paval Pisa +definition: + default: '' + variants: + - definition: | + ${/compiler/if/typeof:/name}(_level(union { int z; ${/compiler/if/typeof:/name}(_target) x; }){0}.x) + enabled-by: + - defined(${/compiler/if/gnuc:/name}) +description: | + The reference type idea is based on libHX by Jan Engelhardt. +enabled-by: true +interface-type: macro +links: +- role: interface-placement + uid: header +- role: interface-ingroup + uid: group +name: RTEMS_TYPEOF_REFX +notes: null +params: +- description: | + is the pointer indirection level expressed in *. + dir: null + name: _level +- description: | + is the reference target type. + dir: null + name: _target +return: + return: null + return-values: [] +type: interface |