[cfe-commits] Fwd: Bug 11709 Fix: va_list on ARM is not following AAPCS 7.1.4
Eli Friedman
eli.friedman at gmail.com
Thu Oct 18 16:47:38 PDT 2012
On Thu, Oct 18, 2012 at 8:23 AM, Logan Chien <tzuhsiang.chien at gmail.com> wrote:
>
>
> ---------- Forwarded message ----------
> From: Logan Chien <tzuhsiang.chien at gmail.com>
> Date: Thu, Oct 18, 2012 at 11:20 PM
> Subject: Re: [cfe-commits] Bug 11709 Fix: va_list on ARM is not following
> AAPCS 7.1.4
> To: Eli Friedman <eli.friedman at gmail.com>
>
>
> Thanks for your review.
>
> I have added new test to test/SemaCXX/builtins-arm.cpp to
> specify the error message when PerformCopyInitialization fails.
>
> BTW, is the InitializedEntity related code correct? I hope I can
> get a modifiable Lvalue reference after initialization (not a copy
> of the value in the structure.) I'm not very confident with this.
The code is doing the right thing.
+ // If va_list is a record type and we are compiling under C++ mode,
+ // then we should check the argument by copy assignment operator
This comment is wrong; even though you're using
PerformCopyInitialization, there's no actual copy because the
InitializedEntity has reference type. "If va_list is a record type
and we are compiling in C++ mode, check the argument using reference
binding."
+// RUN: %clang_cc1 -triple armv7 -fsyntax-only -verify %s
+
+#if defined(__ARM_PCS) || defined(__ARM_EABI__)
Please don't use an ifdef here; just use an appropriate triple.
Otherwise, looks fine.
-Eli
More information about the cfe-commits
mailing list