[Development] #pragma once
jeanmichael.celerier at gmail.com
Wed Jan 24 12:32:36 CET 2018
I certainly have been bitten much more times by include guards that were
the same in different files (especially in old libraries where guards look
like #ifdef QUEUE_H because of course there is a single queue.h file in the
whole world, or because someone just copy-pasted the content of a file to
another and forgot changing include guards -- I plead guilty!) than
whatever hypothetic bug in pragma once GCC's implementation may have.
Are there people here who had, just once, a bug due to #pragma once ? I
never met any. Across network drives, with precompiled headers, unity
builds, with MSVC, Clang, GCC, ccache, distcc and Icecream...
On Wed, Jan 24, 2018 at 11:34 AM, Mitch Curtis <mitch.curtis at qt.io> wrote:
> > -----Original Message-----
> > From: Ville Voutilainen [mailto:ville.voutilainen at gmail.com]
> > Sent: Wednesday, 24 January 2018 11:25 AM
> > To: Alexander Nassian <nassian at bitshift-dynamics.com>
> > Cc: Mitch Curtis <mitch.curtis at qt.io>; development at qt-project.org
> > Subject: Re: [Development] #pragma once
> > On 24 January 2018 at 12:22, Alexander Nassian <nassian at bitshift-
> > dynamics.com> wrote:
> > > Maybe because it’s not part of the C++ standard?
> > #pragma once is not a replacement for include guards.
> Why not?
> > It's not part of the C++ standard because it doesn't always work
> In which ways? My quick search gave me these:
> There's also this answer that highly recommends against it, but seems
> quite contended in the comments:
> > and modules are a superior solution anyway.
> How so?
> Development mailing list
> Development at qt-project.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Development