1/* 2 * Copyright 2016, NICTA 3 * 4 * This software may be distributed and modified according to the terms of 5 * the GNU General Public License version 2. Note that NO WARRANTY is provided. 6 * See "LICENSE_GPLv2.txt" for details. 7 * 8 * @TAG(NICTA_GPL) 9 */ 10 11#ifndef PASS_SIMPLE_CASE3_H__ 12#define PASS_SIMPLE_CASE3_H__ 13 14#include <cogent.h> /* FIXME: Change to or search for the proper path */ 15 16enum { 17 LETBANG_TRUE = 1 18}; 19enum tag_t { 20 TAG_ENUM_Atag, 21 TAG_ENUM_Btag, 22 TAG_ENUM_Ctag 23}; 24typedef enum tag_t tag_t; 25enum untyped_func_enum { 26 FUN_ENUM_foo 27}; 28typedef enum untyped_func_enum untyped_func_enum; 29typedef untyped_func_enum t4; 30struct t1 { 31 tag_t tag; 32 u8 Atag; 33 u8 Btag; 34 u8 Ctag; 35}; 36typedef struct t1 t1; 37struct t2 { 38 tag_t tag; 39 u8 Btag; 40 u8 Ctag; 41}; 42typedef struct t2 t2; 43struct t3 { 44 tag_t tag; 45 u8 Ctag; 46}; 47typedef struct t3 t3; 48static inline u8 foo(t1); 49static inline u8 dispatch_t4(untyped_func_enum a8, t1 a9) 50{ 51 return foo(a9); 52} 53typedef t1 foo_arg; 54typedef u8 foo_ret; 55#endif 56 57 58