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