On Wed, 1 Sept 2021 at 01:20, 김륜현 <winxp4333@xxxxxxxxx> wrote: > Thank you for your Answer. > > I used ca(aaa) instead of ca{aaa} and compile error was solved! > > > > but, next error occurred like below > > > > ../compiler/llvm-mali/include/llvm/Mali/MaliDataFlowFramework.h:288:21: > error: expected ‘,’ before ‘...’ token > > [this, &args...](const MachineBasicBlock *MBB, const VarTy &, > > ^ > > ../compiler/llvm-mali/include/llvm/Mali/MaliDataFlowFramework.h:288:21: > error: expected identifier before ‘...’ token > > ../compiler/llvm-mali/include/llvm/Mali/MaliDataFlowFramework.h:288:24: > error: parameter packs not expanded with ‘...’: > > [this, &args...](const MachineBasicBlock *MBB, const VarTy &, > > > In this case, It appears to be caused by the lambda variable > argument(`...`) > > > Is this problem same cause(C++11 core bug)? > > Lambda capture of parameter packs was added to the C++11 draft in 2010, by https://wg21.link/cwg904 which was implemented in GCC 4.9.0 by https://gcc.gnu.org/r202605 (so you can't do it in GCC 4.8.5). > > > If so, it maybe be difficult to use gcc 4.8 > Yes, you should use a newer compiler if you want to compile modern C++ code. If you are using GCC 4.8.5 because you are on RHEL 7 or CentOS 7, you should consider using GCC from a devtoolset package.