From nobody Thu Jun 4 10:53:43 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4gWLzC1BTHz6gWf5 for ; Thu, 04 Jun 2026 10:53:59 +0000 (UTC) (envelope-from eduardo@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gWLzC0v1rz3Gjb for ; Thu, 04 Jun 2026 10:53:59 +0000 (UTC) (envelope-from eduardo@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1780570439; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=jvg/YtcgrBzyyyRvq4S7nE9qJvN4Gn2MfGWA+FIEmEo=; b=Pfus6E05TzBOj9SLz8ncKFcCg/WIqAqFm5RAPQutXd5r9aFW70RWrk2z7xXLobIZn1Jasz o15jfRwDYJjYSckqVPmj4G8e468PNrZ0hfiNJqyKc9n3IUMk+brWx+6yu0ApuXxV1FWU5p VUXLmzPqE+h68L6iGSeSCjXRZtB2nTTHOUF/44OpYvX+3Y8IldILNNY2L44Ta445cnppBl 6gxPz586vlUM1qYkfHMWg7LhcfUs3YQz/zLBGM+eLMJu5Xpk9vb/9CBX3XDdez+GNVkhI5 S7PwX6lU94QhRFQhE5EXZ8upEfMwnhM/oN5zmNgtgtyJgcNESID5zKbDkJ4dLQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1780570439; a=rsa-sha256; cv=none; b=mnG9U8aJwlP6RWnq1mFnIuzIOW9nYQ6dKNuD2P/d0bYrpowlClXEbg/ryh0qy6v8lz7/BU DLkdKkmyPQL+QQQh8VQv35+xcxBT2UMNL/kKf94LCx6+dK9KnBSp0T7SxXUFpYv7HpnsMy izcqfB0oYi1VXgRX9FgUgO54R2dW22GQfVnqLnpcN0Cb4ToSWPNBJaW/u/nDuPTXRAAvnh lhsDGjmaFWV4knIvEpVfvWfAo2QIqVC5sMW5AqE8fAf/1ntJs6phjTL4XxUnDHsaY7lSNI Dsm76xRsy9jHEtHiJHxPla9E8D7PJHf7QpdeCsjgmZQxALJ89uR818sNZyaSNA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1780570439; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=jvg/YtcgrBzyyyRvq4S7nE9qJvN4Gn2MfGWA+FIEmEo=; b=Zzhdvw0leV6c+wywd2uYWEpyjbOH0OyShGpPtpzkyK/ad7yYdwycxWFXW61yU1VaqvcPzC xZJ7JcQ2mtCaGOSGnHHvPE8XfMt4WIwjD1QXe9qz6KlQIqNCUGptGZHe/i5ZQSilfL36QC kuAAWvGv4/nGGkZXy1tGFIiWg0BYUBYCaDCroLznB9Y2TterQyV2DeTjJfV8k3krKPkggW 1yG2g5VqDYXmbLK7whOzN4QUgYnltXmGrx12sfxRFLY6DDCkjE/IYgZX4GJBp2MMkVpsz4 BbSVL14a2mM2SseAYK+iILGZZ185IOxKZ6ouF3GZ2PIBK0zlXD0Z6/0LBY/3jQ== Received: from mail-lj1-f173.google.com (mail-lj1-f173.google.com [209.85.208.173]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) (Authenticated sender: eduardo) by smtp.freebsd.org (Postfix) with ESMTPSA id 4gWLzC0JTMz11K1 for ; Thu, 04 Jun 2026 10:53:59 +0000 (UTC) (envelope-from eduardo@freebsd.org) Received: by mail-lj1-f173.google.com with SMTP id 38308e7fff4ca-396773734e8so793761fa.3 for ; Thu, 04 Jun 2026 03:53:58 -0700 (PDT) X-Forwarded-Encrypted: i=1; AFNElJ8ec2wpr9/VQsnkm9zko7lkQRMJFZgfmdOisBLMiz7AnbnDKb1DC6Wfi05viBo9/GAK07HlRkbk0GyQsuGiUynJq8jCaA==@freebsd.org X-Gm-Message-State: AOJu0YzT1riePdery8El8O+4AC/gzFOdUIqWrBXaogSS8kmAZ3ciwvbT z82K/snkscRgWtgLy9WZuY4F8Slk/h+9NOFMKl/bkGoAjEMQyyrHhqeGPAmJCydHvYT2lLcWCNU pSIwJOiH2hfOwB98AXnpYzyQD9sIMQrs= X-Received: by 2002:a05:651c:2224:b0:396:7280:1e5e with SMTP id 38308e7fff4ca-396bedb8a86mr3008321fa.0.1780570437241; Thu, 04 Jun 2026 03:53:57 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 References: <6a1dbdb4.18f1f.11efe144@gitrepo.freebsd.org> In-Reply-To: <6a1dbdb4.18f1f.11efe144@gitrepo.freebsd.org> From: Nuno Teixeira Date: Thu, 4 Jun 2026 11:53:43 +0100 X-Gmail-Original-Message-ID: X-Gm-Features: AVHnY4IYHDwZZhkjA86Pl55_X5Fj2D4eITxtFOjkp_EF7vPvUytO6deTbh5T-HQ Message-ID: Subject: Re: git: 86326398b73b - main - Merge commit 63c29df8eceb from llvm git (by Dmitry Polukhin): To: Dimitry Andric Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="00000000000068d09e06536b5c59" --00000000000068d09e06536b5c59 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Dimitry, Not sure if it is related but I'm seing some ports failing recently with errors bellow. ( error: no viable conversion from ... to 'bool' ) Similar fails appears at pkg-fallout: https://pkg-status.freebsd.org/beefy24/data/main-amd64-default/p226b23044ee= 7_s67df3130159/logs/binaryen-130.log https://pkg-status.freebsd.org/beefy24/data/main-amd64-default/p226b23044ee= 7_s67df3130159/logs/encryptpad-0.5.0.4_6.log >From node24 on main-n286352-73e0d6b44038: ``` c++ -o /wrkdirs/usr/ports/www/node24/work/node-v24.16.0/out/Release/obj.target/nod= e_mksnapshot/tools/snapshot/node_mksnapshot.o ../tools/snapshot/node_mksnapshot.cc '-D_GLIBCXX_USE_CXX11_ABI=3D1' '-D_FILE_OFFSET_BITS=3D64' '-DNODE_OPENSSL_CONF_NAME=3Dnodejs_conf' '-DNODE_OPENSSL_CERT_STORE' '-DICU_NO_USER_DATA_OVERRIDE' '-D__STDC_FORMAT_MACROS' '-DNODE_WANT_INTERNALS=3D1' '-DNODE_MKSNAPSHOT_USE_ARRAY_LITERALS=3D1' '-DHAVE_OPENSSL=3D1' '-DNODE_USE_NODE_CODE_CACHE=3D1' '-DHAVE_INSPECTOR=3D1' '-D__POSIX__' '-DNODE_USE_V8_PLATFORM=3D1' '-DNODE_HAVE_I18N_SUPPORT=3D1' '-DHAVE_AMARO= =3D1' '-DHAVE_SQLITE=3D1' '-DHAVE_QUIC=3D0' -I../src -I../tools/msvs/genfiles -I../deps/v8/include -I../deps/cares/include -I../deps/uv/include -I../deps/ncrypto -I../deps/v8/third_party/simdutf -Wall -Wextra -Wno-unused-parameter -pthread -Wall -Wextra -Wno-unused-parameter -Werror=3Dundefined-inline -Werror=3Dextra-semi -Werror=3Dctad-maybe-unsupp= orted -m64 -O3 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -fno-strict-aliasing -std=3Dgnu++20 -MMD -MF /wrkdirs/usr/ports/www/node24/work/node-v24.16.0/out/Release/.deps//wrkdirs= /usr/ports/www/node24/work/node-v24.16.0/out/Release/obj.target/node_mksnap= shot/tools/snapshot/node_mksnapshot.o.d.raw -isystem /usr/local/include -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -c ../test/embedding/embedtest.cc:138:12: error: no viable conversion from 'node::EmbedderSnapshotData::Pointer' (aka 'unique_ptr') to 'bool' 138 | assert(snapshot); | ^~~~~~~~ /usr/include/c++/v1/__memory/unique_ptr.h:276:64: note: explicit conversion function is not a candidate 276 | _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX23 explicit operator bool() const _NOEXCEPT { | ^ ../test/embedding/embedtest.cc:216:14: error: no viable conversion from 'node::EmbedderSnapshotData::Pointer' (aka 'unique_ptr') to 'bool' 216 | assert(snapshot); | ^~~~~~~~ /usr/include/c++/v1/__memory/unique_ptr.h:276:64: note: explicit conversion function is not a candidate 276 | _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX23 explicit operator bool() const _NOEXCEPT { | ^ 2 errors generated. ``` Any clues? Thanks, Dimitry Andric escreveu (segunda, 1/06/2026 =C3=A0(s) 18:= 13): > The branch main has been updated by dim: > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3D86326398b73b81f84831fb5fc4c12d9= 219bc0f57 > > commit 86326398b73b81f84831fb5fc4c12d9219bc0f57 > Author: Dimitry Andric > AuthorDate: 2026-06-01 17:10:11 +0000 > Commit: Dimitry Andric > CommitDate: 2026-06-01 17:10:11 +0000 > > Merge commit 63c29df8eceb from llvm git (by Dmitry Polukhin): > > [Serialization] Fix assertion on re-deserialized friend template > spec=E2=80=A6 (#200566) > > =E2=80=A6ialization in PCH (#198133) > > A friend function-template specialization declared inside a class > template is serialized into a PCH. When the class template is later > instantiated while loading the PCH, the friend specialization can b= e > deserialized re-entrantly (VisitFriendDecl -> VisitFunctionDecl -> > ... > -> VisitFunctionDecl for the same specialization) at the same time = as > the canonical copy, producing two redeclarations of the same > specialization in the template's specialization set. > > ASTDeclReader::VisitFunctionDecl asserted that this collision could > only > happen when merging declarations from different modules. Since > 38b3d87bd384, friend functions defined inside dependent class > templates > are loaded eagerly, so the collision can now also occur within a > single > PCH/AST file (non-modules build), tripping the assertion: > > Assertion failed: (Reader.getContext().getLangOpts().Modules && > "already deserialized this template specialization"), function > VisitFunctionDecl > > The merge that follows (mergeRedeclarable) already links the two > redeclarations correctly regardless of whether modules are enabled, > so > the fix is to drop the modules-only assumption and let the merge ru= n. > > Fixes https://github.com/llvm/llvm-project/issues/198133 > > This fixes (well, simply removes :) an assertion when building the > cad/OrcaSlicer port with precompiled headers turned on. > > PR: 295296 > MFC after: 3 days > --- > contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp | 2 -- > 1 file changed, 2 deletions(-) > > diff --git > a/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp > b/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp > index b918bfbd549c..87224fae5dbb 100644 > --- a/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp > +++ b/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp > @@ -989,8 +989,6 @@ void ASTDeclReader::VisitFunctionDecl(FunctionDecl > *FD) { > if (InsertPos) > CommonPtr->Specializations.InsertNode(FTInfo, InsertPos); > else { > - assert(Reader.getContext().getLangOpts().Modules && > - "already deserialized this template specialization"); > Existing =3D ExistingInfo->getFunction(); > } > } > > --=20 Nuno Teixeira FreeBSD UNIX: Web: https://FreeBSD.org --00000000000068d09e06536b5c59 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello Dimitry,

Not sure if it is re= lated but I'm seing some ports failing recently with errors bellow.
=

From node24 on main-n286352-73e0d6= b44038:
```
c++ -o /wrkdirs/usr/ports/www/node24/work/node-v24.16.0/= out/Release/obj.target/node_mksnapshot/tools/snapshot/node_mksnapshot.o ../= tools/snapshot/node_mksnapshot.cc '-D_GLIBCXX_USE_CXX11_ABI=3D1' &#= 39;-D_FILE_OFFSET_BITS=3D64' '-DNODE_OPENSSL_CONF_NAME=3Dnodejs_con= f' '-DNODE_OPENSSL_CERT_STORE' '-DICU_NO_USER_DATA_OVERRIDE= ' '-D__STDC_FORMAT_MACROS' '-DNODE_WANT_INTERNALS=3D1' = '-DNODE_MKSNAPSHOT_USE_ARRAY_LITERALS=3D1' '-DHAVE_OPENSSL=3D1&= #39; '-DNODE_USE_NODE_CODE_CACHE=3D1' '-DHAVE_INSPECTOR=3D1'= ; '-D__POSIX__' '-DNODE_USE_V8_PLATFORM=3D1' '-DNODE_HA= VE_I18N_SUPPORT=3D1' '-DHAVE_AMARO=3D1' '-DHAVE_SQLITE=3D1&= #39; '-DHAVE_QUIC=3D0' -I../src -I../tools/msvs/genfiles
-I../de= ps/v8/include -I../deps/cares/include -I../deps/uv/include -I../deps/ncrypt= o -I../deps/v8/third_party/simdutf =C2=A0-Wall -Wextra -Wno-unused-paramete= r -pthread -Wall -Wextra -Wno-unused-parameter -Werror=3Dundefined-inline -= Werror=3Dextra-semi -Werror=3Dctad-maybe-unsupported -m64 -O3 -fno-omit-fra= me-pointer -fno-rtti -fno-exceptions -fno-strict-aliasing -std=3Dgnu++20 -M= MD -MF /wrkdirs/usr/ports/www/node24/work/node-v24.16.0/out/Release/.deps//= wrkdirs/usr/ports/www/node24/work/node-v24.16.0/out/Release/obj.target/node= _mksnapshot/tools/snapshot/node_mksnapshot.o.d.raw -isystem /usr/local/incl= ude -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-str= ict-aliasing =C2=A0 -isystem /usr/local/include =C2=A0-c
../test/embeddi= ng/embedtest.cc:138:12: error: no viable conversion from 'node::Embedde= rSnapshotData::Pointer' (aka 'unique_ptr<const EmbedderSnapshotD= ata, DeleteSnapshotData>') to 'bool'
=C2=A0 138 | =C2=A0 = =C2=A0 assert(snapshot);
=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0^~~~~~~~
/usr/include/c++/v1/__memory/unique_ptr.h:276:= 64: note: explicit conversion function is not a candidate
=C2=A0 276 | = =C2=A0 _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX23 explicit operato= r bool() const _NOEXCEPT {
=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0^
../test/embeddi= ng/embedtest.cc:216:14: error: no viable conversion from 'node::Embedde= rSnapshotData::Pointer' (aka 'unique_ptr<const EmbedderSnapshotD= ata, DeleteSnapshotData>') to 'bool'
=C2=A0 216 | =C2=A0 = =C2=A0 =C2=A0 assert(snapshot);
=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0^~~~~~~~
/usr/include/c++/v1/__memory/uni= que_ptr.h:276:64: note: explicit conversion function is not a candidate
= =C2=A0 276 | =C2=A0 _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX23 exp= licit operator bool() const _NOEXCEPT {
=C2=A0 =C2=A0 =C2=A0 | =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0^
2= errors generated.
```

Any clues?

Th= anks,

Dimitry Andric <dim@freebsd.org> escreveu (segunda, 1/06/2026 =C3=A0(s) = 18:13):
The bran= ch main has been updated by dim:

URL: https://cgit.= FreeBSD.org/src/commit/?id=3D86326398b73b81f84831fb5fc4c12d9219bc0f57
commit 86326398b73b81f84831fb5fc4c12d9219bc0f57
Author:=C2=A0 =C2=A0 =C2=A0Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2026-06-01 17:10:11 +0000
Commit:=C2=A0 =C2=A0 =C2=A0Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2026-06-01 17:10:11 +0000

=C2=A0 =C2=A0 Merge commit 63c29df8eceb from llvm git (by Dmitry Polukhin):=

=C2=A0 =C2=A0 =C2=A0 [Serialization] Fix assertion on re-deserialized frien= d template spec=E2=80=A6 (#200566)

=C2=A0 =C2=A0 =C2=A0 =E2=80=A6ialization in PCH (#198133)

=C2=A0 =C2=A0 =C2=A0 A friend function-template specialization declared ins= ide a class
=C2=A0 =C2=A0 =C2=A0 template is serialized into a PCH. When the class temp= late is later
=C2=A0 =C2=A0 =C2=A0 instantiated while loading the PCH, the friend special= ization can be
=C2=A0 =C2=A0 =C2=A0 deserialized re-entrantly (VisitFriendDecl -> Visit= FunctionDecl -> ...
=C2=A0 =C2=A0 =C2=A0 -> VisitFunctionDecl for the same specialization) a= t the same time as
=C2=A0 =C2=A0 =C2=A0 the canonical copy, producing two redeclarations of th= e same
=C2=A0 =C2=A0 =C2=A0 specialization in the template's specialization se= t.

=C2=A0 =C2=A0 =C2=A0 ASTDeclReader::VisitFunctionDecl asserted that this co= llision could only
=C2=A0 =C2=A0 =C2=A0 happen when merging declarations from different module= s. Since
=C2=A0 =C2=A0 =C2=A0 38b3d87bd384, friend functions defined inside dependen= t class templates
=C2=A0 =C2=A0 =C2=A0 are loaded eagerly, so the collision can now also occu= r within a single
=C2=A0 =C2=A0 =C2=A0 PCH/AST file (non-modules build), tripping the asserti= on:

=C2=A0 =C2=A0 =C2=A0 =C2=A0 Assertion failed: (Reader.getContext().getLangO= pts().Modules &&
=C2=A0 =C2=A0 =C2=A0 =C2=A0 "already deserialized this template specia= lization"), function
=C2=A0 =C2=A0 =C2=A0 =C2=A0 VisitFunctionDecl

=C2=A0 =C2=A0 =C2=A0 The merge that follows (mergeRedeclarable) already lin= ks the two
=C2=A0 =C2=A0 =C2=A0 redeclarations correctly regardless of whether modules= are enabled, so
=C2=A0 =C2=A0 =C2=A0 the fix is to drop the modules-only assumption and let= the merge run.

=C2=A0 =C2=A0 =C2=A0 Fixes https://github.com/llvm= /llvm-project/issues/198133

=C2=A0 =C2=A0 This fixes (well, simply removes :) an assertion when buildin= g the
=C2=A0 =C2=A0 cad/OrcaSlicer port with precompiled headers turned on.

=C2=A0 =C2=A0 PR:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0295296
=C2=A0 =C2=A0 MFC after:=C2=A0 =C2=A0 =C2=A0 3 days
---
=C2=A0contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp | 2 --=
=C2=A01 file changed, 2 deletions(-)

diff --git a/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp= b/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp
index b918bfbd549c..87224fae5dbb 100644
--- a/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp
+++ b/contrib/llvm-project/clang/lib/Serialization/ASTReaderDecl.cpp
@@ -989,8 +989,6 @@ void ASTDeclReader::VisitFunctionDecl(FunctionDecl *FD)= {
=C2=A0 =C2=A0 =C2=A0 =C2=A0if (InsertPos)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0CommonPtr->Specializations.InsertNode(= FTInfo, InsertPos);
=C2=A0 =C2=A0 =C2=A0 =C2=A0else {
-=C2=A0 =C2=A0 =C2=A0 =C2=A0 assert(Reader.getContext().getLangOpts().Modul= es &&
-=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"already deser= ialized this template specialization");
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Existing =3D ExistingInfo->getFunction= ();
=C2=A0 =C2=A0 =C2=A0 =C2=A0}
=C2=A0 =C2=A0 =C2=A0}



--
Nuno Teixeira
=
FreeBSD UNIX:=C2=A0 <eduardo@FreeBSD.org>=C2=A0 =C2=A0Web:=C2=A0 https://Fr= eeBSD.org
--00000000000068d09e06536b5c59--