From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Peter Seiderer <ps.report@gmx.net>
Cc: buildroot@buildroot.org
Subject: Re: [Buildroot] [RFC v1] package/assimp: fix namespace related compile failure
Date: Sat, 1 Jan 2022 11:43:11 +0100 [thread overview]
Message-ID: <20220101104311.GD3390456@scaer> (raw)
In-Reply-To: <20211230172507.30212-1-ps.report@gmx.net>
Peter, All,
On 2021-12-30 18:25 +0100, Peter Seiderer spake thusly:
> Fixes:
>
> - http://autobuild.buildroot.net/results/0861c66ec02a55e984577094e28b65c78b95a330
>
> .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:101:33: error: specialization of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' in different namespace [-fpermissive]
> const FileDatabase &db) const {
> ^
> In file included from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.h:49:0,
> from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:47:
> .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderDNA.h:266:10: error: from definition of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' [-fpermissive]
> void Convert(T &dest, const FileDatabase &db) const;
> ^
> .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:121:33: error: specialization of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' in different namespace [-fpermissive]
> const FileDatabase &db) const {
> ^
> In file included from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.h:49:0,
> from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:47:
> .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderDNA.h:266:10: error: from definition of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' [-fpermissive]
> void Convert(T &dest, const FileDatabase &db) const;
> ^
>
> Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> ---
> Note:
> - patch fixes the compile failure but did not find the root cause
> and/or a good explanation why the template spezialisation failes
> for Structure::Convert<CollectionObject> and
> Structure::Convert<CollectionChild> (but not the other ones) and
> why it is fixed by the patch...
Since this is now an upstream commit, I've applied to master, thanks.
Regards,
Yann E. MORIN.
> ---
> ...-explicit-namespace-instead-of-using.patch | 56 +++++++++++++++++++
> 1 file changed, 56 insertions(+)
> create mode 100644 package/assimp/0002-BlenderScene-use-explicit-namespace-instead-of-using.patch
>
> diff --git a/package/assimp/0002-BlenderScene-use-explicit-namespace-instead-of-using.patch b/package/assimp/0002-BlenderScene-use-explicit-namespace-instead-of-using.patch
> new file mode 100644
> index 0000000000..b498c3be3f
> --- /dev/null
> +++ b/package/assimp/0002-BlenderScene-use-explicit-namespace-instead-of-using.patch
> @@ -0,0 +1,56 @@
> +From a099fe7cd331a839137115db5df1733c4c1c8070 Mon Sep 17 00:00:00 2001
> +From: Peter Seiderer <ps.report@gmx.net>
> +Date: Thu, 30 Dec 2021 18:01:54 +0100
> +Subject: [PATCH] BlenderScene: use explicit namespace instead of using
> + namespace
> +
> +Fixes (using g++ Sourcery CodeBench Lite 2014.05-29 - 4.8.3 20140320):
> +
> + .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:101:33: error: specialization of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' in different namespace [-fpermissive]
> + const FileDatabase &db) const {
> + ^
> + In file included from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.h:49:0,
> + from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:47:
> + .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderDNA.h:266:10: error: from definition of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' [-fpermissive]
> + void Convert(T &dest, const FileDatabase &db) const;
> + ^
> + .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:121:33: error: specialization of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' in different namespace [-fpermissive]
> + const FileDatabase &db) const {
> + ^
> + In file included from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.h:49:0,
> + from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:47:
> + .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderDNA.h:266:10: error: from definition of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' [-fpermissive]
> + void Convert(T &dest, const FileDatabase &db) const;
> + ^
> +
> +Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> +---
> + code/AssetLib/Blender/BlenderScene.cpp | 7 +++++--
> + 1 file changed, 5 insertions(+), 2 deletions(-)
> +
> +diff --git a/code/AssetLib/Blender/BlenderScene.cpp b/code/AssetLib/Blender/BlenderScene.cpp
> +index c93d913fc..9ad086fe6 100644
> +--- a/code/AssetLib/Blender/BlenderScene.cpp
> ++++ b/code/AssetLib/Blender/BlenderScene.cpp
> +@@ -49,8 +49,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> + #include "BlenderDNA.h"
> + #include "BlenderSceneGen.h"
> +
> +-using namespace Assimp;
> +-using namespace Assimp::Blender;
> ++namespace Assimp {
> ++namespace Blender {
> +
> + //--------------------------------------------------------------------------------
> + template <>
> +@@ -885,4 +885,7 @@ void DNA::RegisterConverters() {
> + converters["CollectionObject"] = DNA::FactoryPair(&Structure::Allocate<CollectionObject>, &Structure::Convert<CollectionObject>);
> + }
> +
> ++} // namespace Blender
> ++} //namespace Assimp
> ++
> + #endif // ASSIMP_BUILD_NO_BLEND_IMPORTER
> +--
> +2.34.1
> +
> --
> 2.34.1
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
prev parent reply other threads:[~2022-01-01 10:43 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-30 17:25 [Buildroot] [RFC v1] package/assimp: fix namespace related compile failure Peter Seiderer
2021-12-30 17:43 ` Peter Seiderer
2021-12-30 20:11 ` Thomas Petazzoni
2021-12-31 8:18 ` Peter Seiderer
2022-01-03 15:23 ` Thomas Petazzoni
2022-01-01 10:43 ` Yann E. MORIN [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220101104311.GD3390456@scaer \
--to=yann.morin.1998@free.fr \
--cc=buildroot@buildroot.org \
--cc=ps.report@gmx.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.