| /* |
| * Copyright 2016, NICTA |
| * |
| * This software may be distributed and modified according to the terms of |
| * the GNU General Public License version 2. Note that NO WARRANTY is provided. |
| * See "LICENSE_GPLv2.txt" for details. |
| * |
| * @TAG(NICTA_GPL) |
| */ |
| |
| // This file is generated by COGENT version 2.3.0.0-b3438dfb09 |
| // with command ./cogent -g --table-c-types=pass_simple-take-letput.table pass_simple-take-letput.cogent |
| // at Fri, 15 May 2015 16:46:27 AEST |
| |
| #ifndef PASS_SIMPLE_TAKE_LETPUT_H__ |
| #define PASS_SIMPLE_TAKE_LETPUT_H__ |
| |
| #include <cogent.h> /* FIXME: Change to or search for the proper path */ |
| |
| enum { |
| LET_TRUE = 1 |
| }; |
| enum { |
| LETBANG_TRUE = 1 |
| }; |
| enum untyped_func_enum { |
| FUN_ENUM_foo, |
| FUN_ENUM_foobar |
| }; |
| typedef enum untyped_func_enum untyped_func_enum; |
| typedef untyped_func_enum t3; |
| #define FUN_DISP_MACRO_dispatch_t3(a1, a2, a3)\ |
| {\ |
| {\ |
| a1 = foobar(a3);\ |
| }\ |
| } |
| typedef untyped_func_enum t4; |
| #define FUN_DISP_MACRO_dispatch_t4(a1, a2, a3)\ |
| {\ |
| {\ |
| a1 = foo(a3);\ |
| }\ |
| } |
| struct t1 { |
| u16 x; |
| u32 y; |
| }; |
| typedef struct t1 t1; |
| struct t2 { |
| u8 x; |
| u16 y; |
| }; |
| typedef struct t2 t2; |
| static inline t1* foobar(t1*); |
| static inline t2* foo(t2*); |
| static inline t1* dispatch_t3(untyped_func_enum a2, t1* a3) |
| { |
| return foobar(a3); |
| } |
| static inline t2* dispatch_t4(untyped_func_enum a2, t2* a3) |
| { |
| return foo(a3); |
| } |
| typedef t2* foo_arg; |
| typedef t2* foo_ret; |
| typedef t1* foobar_arg; |
| typedef t1* foobar_ret; |
| #endif |
| |
| |