Let's see what people who know much more about compiler features than
any of us think about "#pragma once". Let's check what GCC and Clang do
for their C++ library headers:
$ grep -r pragma.*once /usr/include/clang/5.0.0/include
/usr/include/c++/7.2.0/
$
...and this is about headers that target exactly one compiler and are
known to be locally installed.
Hope this helps,
Mathias
Am 24.01.2018 um 13:19 schrieb Mitch Curtis:
-----Original Message-----
From: Ville Voutilainen [mailto:ville.voutilai...@gmail.com]
Sent: Wednesday, 24 January 2018 1:11 PM
To: Mitch Curtis <mitch.cur...@qt.io>
Cc: Alexander Nassian <nass...@bitshift-dynamics.com>; development@qt-
project.org
Subject: Re: [Development] #pragma once
On 24 January 2018 at 12:34, Mitch Curtis <mitch.cur...@qt.io> wrote:
-----Original Message-----
From: Ville Voutilainen [mailto:ville.voutilai...@gmail.com]
Sent: Wednesday, 24 January 2018 11:25 AM
To: Alexander Nassian <nass...@bitshift-dynamics.com>
Cc: Mitch Curtis <mitch.cur...@qt.io>; development@qt-project.org
Subject: Re: [Development] #pragma once
On 24 January 2018 at 12:22, Alexander Nassian <nassian@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:
https://stackoverflow.com/a/1946730/904422
https://en.wikipedia.org/wiki/Pragma_once#Caveats
That wikipedia link seems to describe the problems fairly accurately.
Do we have that issue in Qt?
and modules are a superior solution anyway.
How so?
Because you can import the same module multiple times without concerns
about re-definitions, and that import is much faster than parsing a header
file.
_______________________________________________
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development
_______________________________________________
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development