[llvm] r216821 - Add a test for converting ArrayRef<T *> to ArrayRef<const T *>.

Craig Topper craig.topper at gmail.com
Sat Aug 30 10:21:58 PDT 2014


I suspect you'd know better than me. This constructor was my first real
experience with type traits.


On Sat, Aug 30, 2014 at 10:13 AM, David Blaikie <dblaikie at gmail.com> wrote:

>
>
>
> On Sat, Aug 30, 2014 at 9:48 AM, Craig Topper <craig.topper at gmail.com>
> wrote:
>
>> Author: ctopper
>> Date: Sat Aug 30 11:48:19 2014
>> New Revision: 216821
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=216821&view=rev
>> Log:
>> Add a test for converting ArrayRef<T *> to ArrayRef<const T *>.
>>
>
> Could we use some static_asserts with type traits to check that other
> things /aren't/ convertible?
>
>
>>
>> Modified:
>>     llvm/trunk/unittests/ADT/ArrayRefTest.cpp
>>
>> Modified: llvm/trunk/unittests/ADT/ArrayRefTest.cpp
>> URL:
>> http://llvm.org/viewvc/llvm-project/llvm/trunk/unittests/ADT/ArrayRefTest.cpp?rev=216821&r1=216820&r2=216821&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/unittests/ADT/ArrayRefTest.cpp (original)
>> +++ llvm/trunk/unittests/ADT/ArrayRefTest.cpp Sat Aug 30 11:48:19 2014
>> @@ -63,4 +63,14 @@ TEST(ArrayRefTest, EmptyEquals) {
>>    EXPECT_TRUE(ArrayRef<unsigned>() == ArrayRef<unsigned>());
>>  }
>>
>> +TEST(ArrayRefTest, ConstConvert) {
>> +  int buf[4];
>> +  for (int i = 0; i < 4; ++i)
>> +    buf[i] = i;
>> +
>> +  static int *A[] = {&buf[0], &buf[1], &buf[2], &buf[3]};
>> +  ArrayRef<const int *> a((ArrayRef<int *>(A)));
>> +  a = ArrayRef<int *>(A);
>> +}
>> +
>>  } // end anonymous namespace
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
>


-- 
~Craig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140830/0d527c30/attachment.html>


More information about the llvm-commits mailing list