X-Loop: help-debbugs@HIDDEN Subject: bug#43023: clang++ in a {clang-toolchain + gcc-toolchain} environment Resent-From: Emmanuel Agullo <emmanuel.agullo@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-guix@HIDDEN Resent-Date: Mon, 24 Aug 2020 15:24:02 +0000 Resent-Message-ID: <handler.43023.B.159828263320149 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 43023 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 43023 <at> debbugs.gnu.org X-Debbugs-Original-To: bug-guix@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.159828263320149 (code B ref -1); Mon, 24 Aug 2020 15:24:02 +0000 Received: (at submit) by debbugs.gnu.org; 24 Aug 2020 15:23:53 +0000 Received: from localhost ([127.0.0.1]:58923 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1kAEK7-0005Eo-U5 for submit <at> debbugs.gnu.org; Mon, 24 Aug 2020 11:23:53 -0400 Received: from lists.gnu.org ([209.51.188.17]:34714) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <emmanuel.agullo@HIDDEN>) id 1kAClZ-0003vr-Tx for submit <at> debbugs.gnu.org; Mon, 24 Aug 2020 09:44:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57964) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <emmanuel.agullo@HIDDEN>) id 1kAClZ-0004cs-Ky for bug-guix@HIDDEN; Mon, 24 Aug 2020 09:44:05 -0400 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:24606) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <emmanuel.agullo@HIDDEN>) id 1kAClV-0004pX-Ny for bug-guix@HIDDEN; Mon, 24 Aug 2020 09:44:05 -0400 X-IronPort-AV: E=Sophos;i="5.76,348,1592863200"; d="scan'208,217";a="464491747" X-MGA-submission: MDG+LeoxqlOJf3u2orZndCLq9hEgG1Ad4D0zf7yJ2LT9gEGJR6dlV8oIHpoOGJia7QyUcd5bKO6dCc6mXnwFqpHT6wdP0RjgYLkrxoFSMt2LlQqGNO5JAq4WRjEGq/xfjYp1fjrzeNKbJBWQlpdRpywyFguVyY6N1zp2gqb3jp2sVg== Received: from zcs-store4.inria.fr ([128.93.142.31]) by mail2-relais-roc.national.inria.fr with ESMTP; 24 Aug 2020 15:43:57 +0200 Date: Mon, 24 Aug 2020 15:43:57 +0200 (CEST) From: Emmanuel Agullo <emmanuel.agullo@HIDDEN> Message-ID: <109069324.10892414.1598276637610.JavaMail.zimbra@HIDDEN> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="=_31f9a8b4-834e-42a7-9635-94f73c30bc07" X-Originating-IP: [194.199.1.36] X-Mailer: Zimbra 8.8.15_GA_3955 (ZimbraWebClient - [unknown] (Linux)/8.8.15_GA_3953) Thread-Index: ClVmDmgjOCbN2ihQ7ZVD5U9CtKDWxg== Thread-Topic: clang++ in a {clang-toolchain + gcc-toolchain} environment Received-SPF: pass client-ip=192.134.164.83; envelope-from=emmanuel.agullo@HIDDEN; helo=mail2-relais-roc.national.inria.fr X-detected-operating-system: by eggs.gnu.org: First seen = 2020/08/24 07:22:04 X-ACL-Warn: Detected OS = ??? X-Spam_score_int: -68 X-Spam_score: -6.9 X-Spam_bar: ------ X-Spam_report: (-6.9 / 5.0 requ) BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Mailman-Approved-At: Mon, 24 Aug 2020 11:23:49 -0400 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.3 (--) --=_31f9a8b4-834e-42a7-9635-94f73c30bc07 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Hello, A typical "hello world" C++ fails in an environment with both `gcc-toolchain' and `clang-toolchain', apperently due to the setup of the `CPLUS_INCLUDE_PATH' environment variable (used because of the `#include <iostream>' instruction), when compiling with `clang++'. I do not know if this is a bug or the expected behaviour. Obviously one is not likely to explicitly load an environment with both `gcc-toolchain' and `clang-toolchain' but migth do so implictly (and possibly not being aware of it) for instance having `gcc-toolchain' globally installed and at some point loading `clang-toolchain' in an environment. Note that it is not critical at all in practice in my case, and I do not know whether it it is desirable to fix it in some way, or, maybe mention the incompatibility somewhere (<https://guix.gnu.org/manual/en/html_node/Development.html> ?) if not already done so – in which case I am sorry for the noise. Please find below: 1. a simplified C++ "hello world" hello.cpp program 2. an expected g++ behaviour in a `gcc-toolchain' environment 3. an expected clang++ behaviour in a `clang-toolchain' environment 4. an environment with both `gcc-toolchain' & `clang-toolchain' - 4.1. with an expected behaviour using `g++' - 4.2. with an (expected or not?) error using `clang++' - 4.3. a (non desirable) fix of the `CPLUS_INCLUDE_PATH' (removing `/gnu/store/…/include/c++') 5. the employed channels if it may help Thanks much for the continous development and support, and once again sorry for the possible noise if this is a known expected behaviour. With best regards, Emmanuel 1 simplified (no newline) C++ "hello world" hello.cpp program ═════════════════════════════════════════════════════════════ ┌──── │ #include <iostream> │ │ int main() { │ std::cout << "Hello World!"; │ return 0; │ } └──── 2 `gcc-toolchain' environment ═════════════════════════════ ┌──── │ guix environment -C --ad-hoc gcc-toolchain coreutils grep │ env | grep CPLUS_INCLUDE_PATH │ g++ hello.cpp │ ./a.out └──── ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ CPLUS_INCLUDE_PATH=/gnu/store/gsylxn8q06w6y7622nw159f3q1vvcx2i-profile/include/c++:/gnu/store/gsylxn8q06w6y7622nw159f3q1vvcx2i-profile/include Hello World! ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3 `clang-toolchain' environment ═══════════════════════════════ ┌──── │ guix environment -C --ad-hoc clang-toolchain coreutils grep │ env | grep CPLUS_INCLUDE_PATH │ clang++ hello.cpp │ ./a.out └──── ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ CPLUS_INCLUDE_PATH=/gnu/store/8qlafmilvc0g1yv8lmilpjmps3p4nrmq-profile/include Hello World! ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4 environment with both `gcc-toolchain' & `clang-toolchain' ═══════════════════════════════════════════════════════════ 4.1 compilation with `g++' ────────────────────────── `g++' in an environment with both gcc and clang toolchains is fine: ┌──── │ guix environment -C --ad-hoc gcc-toolchain clang-toolchain coreutils grep │ env | grep CPLUS_INCLUDE_PATH │ g++ hello.cpp │ ./a.out └──── ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ CPLUS_INCLUDE_PATH=/gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++:/gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include Hello World! ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.2 compilation with `clang++' (FAIL) ───────────────────────────────────── But `clang++' in the same environment (with both gcc and clang toolchains) breaks, raising the following error: ┌──── │ guix environment -C --ad-hoc gcc-toolchain clang-toolchain coreutils grep │ clang++ hello.cpp └──── Error obtained during the `clang++ hello.cpp' step: ┌──── │ In file included from hello.cpp:1: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/iostream:39: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/ostream:38: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/ios:39: │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/exception:105:3: error: unknown type name '_GLIBCXX17_DEPRECATED' │ _GLIBCXX17_DEPRECATED │ ^ │ In file included from hello.cpp:1: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/iostream:39: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/ostream:38: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/ios:39: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/exception:147: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/bits/exception_ptr.h:40: │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:126:1: error: unknown type name '_GLIBCXX_NODISCARD' │ _GLIBCXX_NODISCARD void* operator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc) │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:128:1: error: unknown type name '_GLIBCXX_NODISCARD' │ _GLIBCXX_NODISCARD void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc) │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:140:1: error: unknown type name '_GLIBCXX_NODISCARD' │ _GLIBCXX_NODISCARD void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:142:1: error: unknown type name '_GLIBCXX_NODISCARD' │ _GLIBCXX_NODISCARD void* operator new[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:174:1: error: unknown type name '_GLIBCXX_NODISCARD' │ _GLIBCXX_NODISCARD inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:175:10: error: cannot initialize return object of type 'int *' with an lvalue of type 'void *' │ { return __p; } │ ^~~ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:176:1: error: unknown type name '_GLIBCXX_NODISCARD' │ _GLIBCXX_NODISCARD inline void* operator new[](std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:177:10: error: cannot initialize return object of type 'int *' with an lvalue of type 'void *' │ { return __p; } │ ^~~ │ In file included from hello.cpp:1: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/iostream:39: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/ostream:38: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/ios:39: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/exception:148: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/bits/nested_exception.h:40: │ In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/bits/move.h:57: │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:696:27: error: expected unqualified-id │ _GLIBCXX20_DEPRECATED("use is_standard_layout && is_trivial instead") │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:696:27: error: expected ')' │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:696:26: note: to match this '(' │ _GLIBCXX20_DEPRECATED("use is_standard_layout && is_trivial instead") │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2648:5: error: unknown type name '_GLIBCXX20_CONSTEXPR' │ _GLIBCXX20_CONSTEXPR │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2650:5: error: no variable template matches partial specialization │ _Require<__not_<__is_tuple_like<_Tp>>, │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2652:31: error: expected ';' at end of declaration │ is_move_assignable<_Tp>> │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2653:10: error: unknown type name '_Tp' │ swap(_Tp&, _Tp&) │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2653:16: error: unknown type name '_Tp' │ swap(_Tp&, _Tp&) │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2654:51: error: use of undeclared identifier '_Tp' │ noexcept(__and_<is_nothrow_move_constructible<_Tp>, │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2654:55: error: expected a type │ noexcept(__and_<is_nothrow_move_constructible<_Tp>, │ ^ │ /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2653:5: error: C++ requires a type specifier for all declarations │ swap(_Tp&, _Tp&) │ ^ │ fatal error: too many errors emitted, stopping now [-ferror-limit=] │ 20 errors generated. └──── 4.3 (non desirable) fix of the `CPLUS_INCLUDE_PATH' (removing `/gnu/store/.../include/c++') ─────────────────────────────────────────────────────────────────────────────────────────── For information, it is possible (but obviously in general not desirable) to fix the `CPLUS_INCLUDE_PATH' variable (removing `/gnu/store/.../include/c++'), which leads to a correct compilation (and execution). ┌──── │ guix environment -C --ad-hoc gcc-toolchain clang-toolchain coreutils grep │ export CPLUS_INCLUDE_PATH=/gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include │ clang++ hello.cpp │ ./a.out └──── ┌──── │ Hello World! └──── 5 channels ══════════ ┌──── │ guix describe --format=channels └──── ┌──── │ (list (channel │ (name 'guix-hpc) │ (url "https://gitlab.inria.fr/guix-hpc/guix-hpc.git") │ (commit │ "fa87605fe93fb85b02dad9db246299bcf223f2e0")) │ (channel │ (name 'guix-hpc-non-free) │ (url "https://gitlab.inria.fr/guix-hpc/guix-hpc-non-free.git") │ (commit │ "43d8cb72144a183aa7a93499f9c59ec0f84244b0")) │ (channel │ (name 'guix) │ (url "https://git.savannah.gnu.org/git/guix.git") │ (commit │ "c6872990b51971922f3064cba54ab752fcdc1559") │ (introduction │ (make-channel-introduction │ "9edb3f66fd807b096b48283debdcddccfea34bad" │ (openpgp-fingerprint │ "BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA"))))) └──── --=_31f9a8b4-834e-42a7-9635-94f73c30bc07 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable <html><body><div style=3D"font-family: arial, helvetica, sans-serif; font-s= ize: 12pt; color: #000000"><div>Hello,<br><br>A typical "hello world" C++ f= ails in an environment with both<br>`gcc-toolchain' and `clang-toolchain', = apperently due to the setup of<br>the `CPLUS_INCLUDE_PATH' environment vari= able (used because of the<br>`#include <iostream>' instruction), when= compiling with `clang++'.<br><br>I do not know if this is a bug or the exp= ected behaviour. Obviously one </div><div>is not likely to explicitly load = an environment with both `gcc-toolchain' </div><div>and `clang-toolchain' b= ut migth do so implictly (and possibly not being<br>aware of it) for instan= ce having `gcc-toolchain' globally installed and<br>at some point loading `= clang-toolchain' in an environment.<br><br>Note that it is not critical at = all in practice in my case, and I do<br>not know whether it it is desirable= to fix it in some way, or, maybe<br>mention the incompatibility somewhere<= br>(<https://guix.gnu.org/manual/en/html_node/Development.html> ?) if= not<br>already done so =E2=80=93 in which case I am sorry for the noise.<b= r><br>Please find below:<br>1. a simplified C++ "hello world" hello.cpp pro= gram<br>2. an expected g++ behaviour in a `gcc-toolchain' environment<br>3.= an expected clang++ behaviour in a `clang-toolchain' environment<br>4. an = environment with both `gcc-toolchain' & `clang-toolchain'<br>- 4.1. wit= h an expected behaviour using `g++'<br>- 4.2. with an (expected or not?) er= ror using `clang++'<br>- 4.3. a (non desirable) fix of the `CPLUS_INCLUDE_P= ATH' (removing<br> `/gnu/store/=E2=80=A6/include/c++')<br>5. the empl= oyed channels if it may help<br><br>Thanks much for the continous developme= nt and support, and once</div><div>again sorry for the possible noise if th= is is a known expected</div><div>behaviour.<br><br>With best regards,<br><b= r>Emmanuel<br><br><br>1 simplified (no newline) C++ "hello world" hello.cpp= program<br>=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90= =E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2= =95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95= =90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90= =E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2= =95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95= =90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90= =E2=95=90=E2=95=90=E2=95=90=E2=95=90<br><br> =E2=94=8C=E2=94=80=E2=94= =80=E2=94=80=E2=94=80<br> =E2=94=82 #include <iostream><br>&nbs= p; =E2=94=82 <br> =E2=94=82 int main() {<br> =E2=94=82 &nb= sp; std::cout << "Hello World!";<br> =E2=94=82 = ; return 0;<br> =E2=94=82 }<br> =E2=94=94=E2= =94=80=E2=94=80=E2=94=80=E2=94=80<br><br><br>2 `gcc-toolchain' environment<= br>=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90= =E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2= =95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95= =90=E2=95=90=E2=95=90=E2=95=90=E2=95=90<br><br> =E2=94=8C=E2=94=80=E2= =94=80=E2=94=80=E2=94=80<br> =E2=94=82 guix environment -C --ad-hoc g= cc-toolchain coreutils grep<br> =E2=94=82 env | grep CPLUS_INCLUDE_PA= TH<br> =E2=94=82 g++ hello.cpp<br> =E2=94=82 ./a.out<br> = =E2=94=94=E2=94=80=E2=94=80=E2=94=80=E2=94=80<br><br> =E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81<br> CPLUS_INCLUDE_PATH=3D/gnu/store/gsylxn8q06w6y7622nw159f= 3q1vvcx2i-profile/include/c++:/gnu/store/gsylxn8q06w6y7622nw159f3q1vvcx2i-p= rofile/include <br> &n= bsp; Hello  = ; &n= bsp;  = ; &n= bsp;  = ; &n= bsp;  = ; &n= bsp;  = ; &n= bsp;  = ; World! <br> =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81<br><br><br>3 `clang-too= lchain' environment<br>=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95= =90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90= =E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2= =95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95= =90<br><br> =E2=94=8C=E2=94=80=E2=94=80=E2=94=80=E2=94=80<br> = =E2=94=82 guix environment -C --ad-hoc clang-toolchain coreutils grep<br>&n= bsp; =E2=94=82 env | grep CPLUS_INCLUDE_PATH<br> =E2=94=82 clang++ he= llo.cpp<br> =E2=94=82 ./a.out<br> =E2=94=94=E2=94=80=E2=94=80= =E2=94=80=E2=94=80<br><br> =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= <br> CPLUS_INCLUDE_PATH=3D/gnu/store/8qlafmilvc0g1yv8lmilpjmps3= p4nrmq-profile/include <br>= Hello &nb= sp; = &nb= sp; = &nb= sp; = World! <br> =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= <br><br><br>4 environment with both `gcc-toolchain' & `clang-toolchain'= <br>=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95= =90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90= =E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2= =95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95= =90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90= =E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2= =95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95= =90=E2=95=90<br><br>4.1 compilation with `g++'<br>=E2=94=80=E2=94=80=E2=94= =80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80= =E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2= =94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80<br><br> = `g++' in an environment with both gcc and clang toolchains is fine:<br>&nbs= p; =E2=94=8C=E2=94=80=E2=94=80=E2=94=80=E2=94=80<br> =E2=94=82 guix e= nvironment -C --ad-hoc gcc-toolchain clang-toolchain coreutils grep<br>&nbs= p; =E2=94=82 env | grep CPLUS_INCLUDE_PATH<br> =E2=94=82 g++ hello.cp= p<br> =E2=94=82 ./a.out<br> =E2=94=94=E2=94=80=E2=94=80=E2=94= =80=E2=94=80<br><br> =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81<br> CPLUS_INCLUDE= _PATH=3D/gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++:/gn= u/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include &= nbsp; <br> Hello  = ; &n= bsp;  = ; &n= bsp;  = ; &n= bsp;  = ; &n= bsp;  = ; &n= bsp;  = ; World! <br> = =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2= =94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94= =81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81=E2=94=81= =E2=94=81=E2=94=81<br><br><br>4.2 compilation with `clang++' (FAIL)<br>=E2= =94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94= =80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80= =E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2= =94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94= =80=E2=94=80=E2=94=80=E2=94=80<br><br> But `clang++' in the same envi= ronment (with both gcc and clang<br> toolchains) breaks, raising the = following error:<br> =E2=94=8C=E2=94=80=E2=94=80=E2=94=80=E2=94=80<br= > =E2=94=82 guix environment -C --ad-hoc gcc-toolchain clang-toolchai= n coreutils grep<br> =E2=94=82 clang++ hello.cpp<br> =E2=94=94= =E2=94=80=E2=94=80=E2=94=80=E2=94=80<br><br> Error obtained during th= e `clang++ hello.cpp' step:<br> =E2=94=8C=E2=94=80=E2=94=80=E2=94=80= =E2=94=80<br> =E2=94=82 In file included from hello.cpp:1:<br> = =E2=94=82 In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z= -profile/include/c++/iostream:39:<br> =E2=94=82 In file included from= /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/ostream:38= :<br> =E2=94=82 In file included from /gnu/store/3ka3a9wgx5sk6ac84nld= x7ldpxppn29z-profile/include/c++/ios:39:<br> =E2=94=82 /gnu/store/3ka= 3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/exception:105:3: error: u= nknown type name '_GLIBCXX17_DEPRECATED'<br> =E2=94=82 _G= LIBCXX17_DEPRECATED<br> =E2=94=82 ^<br> =E2=94=82 I= n file included from hello.cpp:1:<br> =E2=94=82 In file included from= /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/iostream:3= 9:<br> =E2=94=82 In file included from /gnu/store/3ka3a9wgx5sk6ac84nl= dx7ldpxppn29z-profile/include/c++/ostream:38:<br> =E2=94=82 In file i= ncluded from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c+= +/ios:39:<br> =E2=94=82 In file included from /gnu/store/3ka3a9wgx5sk= 6ac84nldx7ldpxppn29z-profile/include/c++/exception:147:<br> =E2=94=82= In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/= include/c++/bits/exception_ptr.h:40:<br> =E2=94=82 /gnu/store/3ka3a9w= gx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:126:1: error: unknown typ= e name '_GLIBCXX_NODISCARD'<br> =E2=94=82 _GLIBCXX_NODISCARD void* op= erator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc)<br> =E2=94=82= ^<br> =E2=94=82 /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/= include/c++/new:128:1: error: unknown type name '_GLIBCXX_NODISCARD'<br>&nb= sp; =E2=94=82 _GLIBCXX_NODISCARD void* operator new[](std::size_t) _GLIBCXX= _THROW (std::bad_alloc)<br> =E2=94=82 ^<br> =E2=94=82 /gnu/stor= e/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:140:1: error: un= known type name '_GLIBCXX_NODISCARD'<br> =E2=94=82 _GLIBCXX_NODISCARD= void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NO= EXCEPT<br> =E2=94=82 ^<br> =E2=94=82 /gnu/store/3ka3a9wgx5sk6ac= 84nldx7ldpxppn29z-profile/include/c++/new:142:1: error: unknown type name '= _GLIBCXX_NODISCARD'<br> =E2=94=82 _GLIBCXX_NODISCARD void* operator n= ew[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT<br> = ; =E2=94=82 ^<br> =E2=94=82 /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn2= 9z-profile/include/c++/new:174:1: error: unknown type name '_GLIBCXX_NODISC= ARD'<br> =E2=94=82 _GLIBCXX_NODISCARD inline void* operator new(std::= size_t, void* __p) _GLIBCXX_USE_NOEXCEPT<br> =E2=94=82 ^<br> = =E2=94=82 /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/n= ew:175:10: error: cannot initialize return object of type 'int *' with an l= value of type 'void *'<br> =E2=94=82 { return __p; }<br> =E2=94= =82 ^~~<br> =E2= =94=82 /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:= 176:1: error: unknown type name '_GLIBCXX_NODISCARD'<br> =E2=94=82 _G= LIBCXX_NODISCARD inline void* operator new[](std::size_t, void* __p) _GLIBC= XX_USE_NOEXCEPT<br> =E2=94=82 ^<br> =E2=94=82 /gnu/store/3ka3a9= wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/new:177:10: error: cannot in= itialize return object of type 'int *' with an lvalue of type 'void *'<br>&= nbsp; =E2=94=82 { return __p; }<br> =E2=94=82 = ^~~<br> =E2=94=82 In file included fro= m hello.cpp:1:<br> =E2=94=82 In file included from /gnu/store/3ka3a9w= gx5sk6ac84nldx7ldpxppn29z-profile/include/c++/iostream:39:<br> =E2=94= =82 In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profi= le/include/c++/ostream:38:<br> =E2=94=82 In file included from /gnu/s= tore/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/ios:39:<br> = =E2=94=82 In file included from /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29= z-profile/include/c++/exception:148:<br> =E2=94=82 In file included f= rom /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/bits/ne= sted_exception.h:40:<br> =E2=94=82 In file included from /gnu/store/3= ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/bits/move.h:57:<br>&nbs= p; =E2=94=82 /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c+= +/type_traits:696:27: error: expected unqualified-id<br> =E2=94=82&nb= sp; _GLIBCXX20_DEPRECATED("use is_standard_layout &&a= mp; is_trivial instead")<br> =E2=94=82 &= nbsp; &nbs= p; ^<br> =E2=94=82 /g= nu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:6= 96:27: error: expected ')'<br> =E2=94=82 /gnu/store/3ka3a9wgx5sk6ac84= nldx7ldpxppn29z-profile/include/c++/type_traits:696:26: note: to match this= '('<br> =E2=94=82 _GLIBCXX20_DEPRECATED("use= is_standard_layout && is_trivial instead")<br> =E2=94=82&nbs= p; &= nbsp; ^<b= r> =E2=94=82 /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/incl= ude/c++/type_traits:2648:5: error: unknown type name '_GLIBCXX20_CONSTEXPR'= <br> =E2=94=82 _GLIBCXX20_CONSTEXPR<br> = =E2=94=82 ^<br> =E2=94=82 /gnu/store/3ka3a9w= gx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2650:5: error: no= variable template matches partial specialization<br> =E2=94=82 = _Require<__not_<__is_tuple_like<_Tp>>,<br= > =E2=94=82 ^<br> =E2=94=82 /gnu/store/= 3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2652:31: e= rror: expected ';' at end of declaration<br> =E2=94=82 &nb= sp; is_move_ass= ignable<_Tp>><br> =E2=94=82 &nb= sp; = &nb= sp; ^<br> =E2=94=82 /gnu/store/3k= a3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2653:10: err= or: unknown type name '_Tp'<br> =E2=94=82 swa= p(_Tp&, _Tp&)<br> =E2=94=82 &nbs= p; ^<br> =E2=94=82 /gnu/store/3ka3a9wgx5sk6ac84nldx= 7ldpxppn29z-profile/include/c++/type_traits:2653:16: error: unknown type na= me '_Tp'<br> =E2=94=82 swap(_Tp&, _Tp&= ;)<br> =E2=94=82  = ; ^<br> =E2=94=82 /gnu/store/3ka3= a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c++/type_traits:2654:51: error= : use of undeclared identifier '_Tp'<br> =E2=94=82 &= nbsp; noexcept(__and_<is_nothrow_move_constructible<_Tp>,<br> = ; =E2=94=82 &nbs= p; &= nbsp; &nbs= p; &= nbsp; ^<br> =E2=94=82 /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn2= 9z-profile/include/c++/type_traits:2654:55: error: expected a type<br> = ; =E2=94=82 noexcept(__and_<is_nothrow_move_cons= tructible<_Tp>,<br> =E2=94=82 &nbs= p; &= nbsp; &nbs= p; &= nbsp; ^<br>&nbs= p; =E2=94=82 /gnu/store/3ka3a9wgx5sk6ac84nldx7ldpxppn29z-profile/include/c+= +/type_traits:2653:5: error: C++ requires a type specifier for all declarat= ions<br> =E2=94=82 swap(_Tp&, _Tp&)<b= r> =E2=94=82 ^<br> =E2=94=82 fatal erro= r: too many errors emitted, stopping now [-ferror-limit=3D]<br> =E2= =94=82 20 errors generated.<br> =E2=94=94=E2=94=80=E2=94=80=E2=94=80= =E2=94=80<br><br><br>4.3 (non desirable) fix of the `CPLUS_INCLUDE_PATH' (r= emoving `/gnu/store/.../include/c++')<br>=E2=94=80=E2=94=80=E2=94=80=E2=94= =80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80= =E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2= =94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94= =80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80= =E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2= =94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94= =80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80= =E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2= =94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94= =80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80= =E2=94=80=E2=94=80=E2=94=80=E2=94=80<br><br> For information, it is p= ossible (but obviously in general not<br> desirable) to fix the `CPLU= S_INCLUDE_PATH' variable (removing<br> `/gnu/store/.../include/c++'),= which leads to a correct compilation<br> (and execution).<br><br>&nb= sp; =E2=94=8C=E2=94=80=E2=94=80=E2=94=80=E2=94=80<br> =E2=94=82 guix = environment -C --ad-hoc gcc-toolchain clang-toolchain coreutils grep<br>&nb= sp; =E2=94=82 export CPLUS_INCLUDE_PATH=3D/gnu/store/3ka3a9wgx5sk6ac84nldx7= ldpxppn29z-profile/include<br> =E2=94=82 clang++ hello.cpp<br> = =E2=94=82 ./a.out<br> =E2=94=94=E2=94=80=E2=94=80=E2=94=80=E2=94=80<b= r><br> =E2=94=8C=E2=94=80=E2=94=80=E2=94=80=E2=94=80<br> =E2=94= =82 Hello World!<br> =E2=94=94=E2=94=80=E2=94=80=E2=94=80=E2=94=80<br= ><br><br>5 channels<br>=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95=90=E2=95= =90=E2=95=90=E2=95=90=E2=95=90=E2=95=90<br><br> =E2=94=8C=E2=94=80=E2= =94=80=E2=94=80=E2=94=80<br> =E2=94=82 guix describe --format=3Dchann= els<br> =E2=94=94=E2=94=80=E2=94=80=E2=94=80=E2=94=80<br><br> = =E2=94=8C=E2=94=80=E2=94=80=E2=94=80=E2=94=80<br> =E2=94=82 (list (ch= annel<br> =E2=94=82 (= name 'guix-hpc)<br> =E2=94=82 &nbs= p; (url "https://gitlab.inria.fr/guix-hpc/guix-hpc.git")<br> = =E2=94=82 (commit<br> = =E2=94=82 "fa8= 7605fe93fb85b02dad9db246299bcf223f2e0"))<br> =E2=94=82 &nb= sp; (channel<br> =E2=94=82 &= nbsp; (name 'guix-hpc-non-free)<br> =E2=94=82 = (url "https://gitlab.inria.fr/gu= ix-hpc/guix-hpc-non-free.git")<br> =E2=94=82 &= nbsp; (commit<br> =E2=94=82 = "43d8cb72144a183aa7a93499f9c59ec0f8424= 4b0"))<br> =E2=94=82 (channel<br>= =E2=94=82 (name 'gui= x)<br> =E2=94=82 (url= "https://git.savannah.gnu.org/git/guix.git")<br> =E2=94=82 &nbs= p; (commit<br> =E2=94=82 &nb= sp; "c6872990b51971922f3064= cba54ab752fcdc1559")<br> =E2=94=82  = ; (introduction<br> =E2=94=82 &nbs= p; (make-channel-introduction<br> =E2= =94=82 &nb= sp; "9edb3f66fd807b096b48283debdcddccfea34bad"<br> =E2=94=82 &nb= sp; (openpgp-fi= ngerprint<br> =E2=94=82 &nbs= p; "BBB0 2DDF 2CEA F6A8 0D1D E643= A2A0 6DF2 A33A 54FA")))))<br> =E2=94=94=E2=94=80=E2=94=80=E2=94=80= =E2=94=80<br><br data-mce-bogus=3D"1"></div></div></body></html> --=_31f9a8b4-834e-42a7-9635-94f73c30bc07--
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Emmanuel Agullo <emmanuel.agullo@HIDDEN> Subject: bug#43023: Acknowledgement (clang++ in a {clang-toolchain + gcc-toolchain} environment) Message-ID: <handler.43023.B.159828263320149.ack <at> debbugs.gnu.org> References: <109069324.10892414.1598276637610.JavaMail.zimbra@HIDDEN> X-Gnu-PR-Message: ack 43023 X-Gnu-PR-Package: guix Reply-To: 43023 <at> debbugs.gnu.org Date: Mon, 24 Aug 2020 15:24:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-guix@HIDDEN If you wish to submit further information on this problem, please send it to 43023 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 43023: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D43023 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.