Re: [PATCH 05/11] Remove va_copy at MSVC because there are va_copy.
- From
Erik Faye-Lund <kusmabite@googlemail.com>
- Date
- Aug 17, 2009, 17:26 UTC
- Message-ID
- <40aa078e0908171026h4a92d249u4e2b560e01696303@mail.gmail.com>
- In-Reply-To
- <40aa078e0908171002j4b610fe4j34a4e7d3081a9efa@mail.gmail.com>
On Mon, Aug 17, 2009 at 7:02 PM, Erik Faye-Lund<kusmabite@googlemail.com> wrote:
> Are you sure va_copy is always a preprocessor symbol?
According to the following forum-post we are: http://www.velocityreviews.com/forums/showpost.php?p=1689162&postcount=2
However, I decided to dig a bit further, so I had a look at the public draft spec at http://www.open-std.org/JTC1/SC22/WG14/www/docs/n1256.pdf, section 7.15.1:
"The va_start and va_arg macros described in this subclause shall be implemented as macros, not functions. It is unspecified whether va_copy and va_end are macros or identifiers declared with external linkage."
I don't have access (that I know of) to the finalized spec, but it looks sketchy to me to depend on va_copy being implemented as a macro given this wording.
-- Erik "kusma" Faye-Lund kusmabite@gmail.com (+47) 986 59 656