mirror of
https://github.com/intel/llvm.git
synced 2026-01-31 16:29:50 +08:00
Add IR generation support for SizeOfPackExpr.
llvm-svn: 123332
This commit is contained in:
@@ -195,6 +195,11 @@ public:
|
||||
return Builder.CreateBitCast(V, ConvertType(E->getType()));
|
||||
}
|
||||
|
||||
Value *VisitSizeOfPackExpr(SizeOfPackExpr *E) {
|
||||
return llvm::ConstantInt::get(ConvertType(E->getType()),
|
||||
E->getPackLength());
|
||||
}
|
||||
|
||||
// l-values.
|
||||
Value *VisitDeclRefExpr(DeclRefExpr *E) {
|
||||
Expr::EvalResult Result;
|
||||
|
||||
12
clang/test/CodeGenCXX/variadic-templates.cpp
Normal file
12
clang/test/CodeGenCXX/variadic-templates.cpp
Normal file
@@ -0,0 +1,12 @@
|
||||
// RUN: %clang_cc1 -std=c++0x -triple x86_64-apple-darwin10 -emit-llvm -o - %s | FileCheck %s
|
||||
|
||||
template<typename ...Types>
|
||||
int get_num_types(Types...) {
|
||||
return sizeof...(Types);
|
||||
}
|
||||
|
||||
// CHECK: define weak_odr i32 @_Z13get_num_typesIJifdEEispT_
|
||||
// CHECK: ret i32 3
|
||||
template int get_num_types(int, float, double);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user