1 // REQUIRES: asserts 2 // RUN: %clang_cc1 -O0 -triple %itanium_abi_triple -debug-info-kind=limited -S -emit-llvm %s -o - | \ 3 // RUN: FileCheck %s 4 5 // This test simply checks that the varargs thunk is created. The failing test 6 // case asserts. 7 8 typedef signed char __int8_t; 9 typedef int BOOL; 10 class CMsgAgent; 11 12 class CFs { 13 public: 14 typedef enum {} CACHE_HINT; 15 virtual BOOL ReqCacheHint( CMsgAgent* p_ma, CACHE_HINT hint, ... ) ; 16 }; 17 18 typedef struct {} _Lldiv_t; 19 20 class CBdVfs { 21 public: ~CBdVfs()22 virtual ~CBdVfs( ) {} 23 }; 24 25 class CBdVfsImpl : public CBdVfs, public CFs { 26 BOOL ReqCacheHint( CMsgAgent* p_ma, CACHE_HINT hint, ... ); 27 }; 28 ReqCacheHint(CMsgAgent * p_ma,CACHE_HINT hint,...)29BOOL CBdVfsImpl::ReqCacheHint( CMsgAgent* p_ma, CACHE_HINT hint, ... ) { 30 return true; 31 } 32 33 // CHECK: define {{.*}} @_ZThn{{[48]}}_N10CBdVfsImpl12ReqCacheHintEP9CMsgAgentN3CFs10CACHE_HINTEz( 34