diff --git a/unittests/AST/SourceLocationTest.cpp b/unittests/AST/SourceLocationTest.cpp
index b8d8b02..f6c0edc 100644
--- a/unittests/AST/SourceLocationTest.cpp
+++ b/unittests/AST/SourceLocationTest.cpp
@@ -132,10 +132,10 @@
 
 TEST(CompoundLiteralExpr, ParensCompoundVectorLiteralRange) {
   RangeVerifier<CompoundLiteralExpr> Verifier;
-  Verifier.expectRange(2, 11, 2, 22);
+  Verifier.expectRange(2, 20, 2, 31);
   EXPECT_TRUE(Verifier.match(
                   "typedef int int2 __attribute__((ext_vector_type(2)));\n"
-                  "int2 i2 = (int2)(1, 2);", 
+                  "constant int2 i2 = (int2)(1, 2);", 
                   compoundLiteralExpr(), Lang_OpenCL));
 }
 
@@ -149,10 +149,10 @@
 
 TEST(InitListExpr, VectorLiteralInitListParens) {
   RangeVerifier<InitListExpr> Verifier;
-  Verifier.expectRange(2, 17, 2, 22);
+  Verifier.expectRange(2, 26, 2, 31);
   EXPECT_TRUE(Verifier.match(
                   "typedef int int2 __attribute__((ext_vector_type(2)));\n"
-                  "int2 i2 = (int2)(1, 2);", initListExpr(), Lang_OpenCL));
+                  "constant int2 i2 = (int2)(1, 2);", initListExpr(), Lang_OpenCL));
 }
 
 } // end namespace ast_matchers
