[cfe-commits] r59605 - /cfe/trunk/include/clang/Basic/IdentifierTable.h
Chris Lattner
sabre at nondot.org
Wed Nov 19 20:40:03 PST 2008
On Nov 19, 2008, at 8:21 AM, Sebastian Redl wrote:
> Chris Lattner wrote:
>> Author: lattner
>> Date: Wed Nov 19 01:49:14 2008
>> New Revision: 59605
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=59605&view=rev
>> Log:
>> add a new helper method. It is unclear to me why this doesn't
>> work, but GCC
>> won't match it:
>>
>> template<std::size_t StrLen>
>> bool isName(const char Str[StrLen]) const {
>> return getLength() == StrLen-1 && !memcmp(getName(), Str,
>> StrLen-1);
>> }
>>
> Because it's meaningless. A parameter of array type always decays.
Right.
> To
> actually pass an array, you have to make it a reference:
>
> template <std::size_t StrLen>
> bool isName(const char (&Str)[StrLen]) const
Awesome, that was exactly the trick I was trying to figure out but
couldn't put the pieces together. Thanks Sebastian!
-Chris
More information about the cfe-commits
mailing list