Please consider reading http://llvm.org/docs/DeveloperPolicy.html#making-a-patch
On Mon, Aug 5, 2013 at 6:46 PM, Artyom Skrobov <[email protected]> wrote: > diff --git a/lib/Sema/SemaInit.cpp b/lib/Sema/SemaInit.cpp > index 4072550..07875c4 100644 > --- a/lib/Sema/SemaInit.cpp > +++ b/lib/Sema/SemaInit.cpp > @@ -3424,15 +3424,18 @@ static OverloadingResult > TryRefInitWithConversionFunction(Sema &S, > return OR_No_Viable_Function; > > const RecordType *T2RecordType = 0; > + RecordDecl *T2RecordDecl = 0; > if ((T2RecordType = T2->getAs<RecordType>()) && > + (T2RecordDecl = T2RecordType->getDecl()) && > + isa<CXXRecordDecl>(T2RecordDecl) && > !S.RequireCompleteType(Kind.getLocation(), T2, 0)) { > // The type we're converting from is a class type, enumerate its > conversion > // functions. > - CXXRecordDecl *T2RecordDecl = > cast<CXXRecordDecl>(T2RecordType->getDecl()); > + CXXRecordDecl *T2CXXRecordDecl = cast<CXXRecordDecl>(T2RecordDecl); > > std::pair<CXXRecordDecl::conversion_iterator, > CXXRecordDecl::conversion_iterator> > - Conversions = T2RecordDecl->getVisibleConversionFunctions(); > + Conversions = T2CXXRecordDecl->getVisibleConversionFunctions(); > for (CXXRecordDecl::conversion_iterator > I = Conversions.first, E = Conversions.second; I != E; ++I) { > NamedDecl *D = *I; > diff --git a/test/Sema/va_start_arm.c b/test/Sema/va_start_arm.c > new file mode 100644 > index 0000000..f3be7f2 > --- /dev/null > +++ b/test/Sema/va_start_arm.c > @@ -0,0 +1,7 @@ > +// RUN: %clang_cc1 -triple armv7 -verify %s > +typedef struct __va_list_tag {} __va_list_tag; > + > +void test(int n, ...) { > + __va_list_tag ap1; > + __builtin_va_start(ap1, n); // expected-error {{non-const lvalue > reference to type '__builtin_va_list' cannot bind to a value of unrelated > type '__va_list_tag' (aka 'struct __va_list_tag')}} > +} > > -- IMPORTANT NOTICE: The contents of this email and any attachments are > confidential and may also be privileged. If you are not the intended > recipient, please notify the sender immediately and do not disclose the > contents to any other person, use it for any purpose, or store or copy the > information in any medium. Thank you. > > > _______________________________________________ > cfe-commits mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
