norm: fix build with gcc 7.x
PATCH 1/1 norm: fix build with gcc 7.x
This commit adds a patch to the norm package that fixes the build with gcc 7.x. Many thanks to Romain Naour for pointing out the solution to this C++ build problem.
Fixes:
http://autobuild.buildroot.net/results/c79dc84cdc34d62199099eb4438b1aed3e7459bb/
--- package/norm/0003-fix-const-qualifier-gcc7.patch | 44 ++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 package/norm/0003-fix-const-qualifier-gcc7.patch
package/norm/0003-fix-const-qualifier-gcc7.patch new file +44 -0
@@ -0,0 +1,44 @@ +protolib: remove const qualifiers in ProtoSortedTreeTemplate + +The methods PeekPrevItem() and PeekNextItem() in +ProtoSortedTreeTemplate were using a const qualifier, but not the +corresponding methods in ProtoSortedTree, causing a build failure with +gcc 7.x: + +norm-1.5r6/protolib/include/protoTree.h: In member function 'ITEM_TYPE* ProtoSortedTreeTemplate<ITEM_TYPE>::Iterator::PeekPrevItem() const': +norm-1.5r6/protolib/include/protoTree.h:652:93: error: no matching function for call to 'ProtoSortedTreeTemplate<ITEM_TYPE>::Iterator::PeekPrevItem() const' + {return static_cast<ITEM_TYPE*>(ProtoSortedTree::Iterator::PeekPrevItem());} + ^ +norm-1.5r6/protolib/include/protoTree.h:565:23: note: candidate: ProtoSortedTree::Item* ProtoSortedTree::Iterator::PeekPrevItem() <near match> + Item* PeekPrevItem() + ^~~~~~~~~~~~ + +Since the same methods in ProtoTreeTemplate don't have the const +qualifier, we take the simple solution of dropping such qualifiers +from ProtoSortedTreeTemplate as well, which fixes the build of norm +with gcc 7.x. + +Many thanks to Romain Naour <[email protected]> for pointing out +the solution. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/protolib/include/protoTree.h +=================================================================== +--- a/protolib/include/protoTree.h ++++ b/protolib/include/protoTree.h +@@ -648,12 +648,12 @@ + + ITEM_TYPE* GetPrevItem() + {return static_cast<ITEM_TYPE*>(ProtoSortedTree::Iterator::GetPrevItem());} +- ITEM_TYPE* PeekPrevItem() const ++ ITEM_TYPE* PeekPrevItem() + {return static_cast<ITEM_TYPE*>(ProtoSortedTree::Iterator::PeekPrevItem());} + + ITEM_TYPE* GetNextItem() + {return static_cast<ITEM_TYPE*>(ProtoSortedTree::Iterator::GetNextItem());} +- ITEM_TYPE* PeekNextItem() const ++ ITEM_TYPE* PeekNextItem() + {return static_cast<ITEM_TYPE*>(ProtoSortedTree::Iterator::PeekNextItem());} + + }; // end class ProtoSortedTreeTemplate::Iterator
Signature · 1 line
2.9.4
PATCH 1/1 norm: fix build with gcc 7.x
Hello,
Quoted 1 line · Thomas Petazzoni
package/norm/0003-fix-const-qualifier-gcc7.patch | 44 ++++++++++++++++++++++++
This patch has been submitted upstream to
https://publists.nrl.navy.mil/pipermail/norm-dev/, but the mailing list archives have not been updated yet.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH 1/1 norm: fix build with gcc 7.x
In reply to Thomas PetazzoniHi Thomas,
Le 20/08/2017 ? 15:52, Thomas Petazzoni a ?crit :
Quoted 7 lines
This commit adds a patch to the norm package that fixes the build with gcc 7.x. Many thanks to Romain Naour for pointing out the solution to this C++ build problem.
Fixes:
http://autobuild.buildroot.net/results/c79dc84cdc34d62199099eb4438b1aed3e7459bb/
Best regards,
Romain
Quoted 58 lines
Signed-off-by Thomas Petazzoni <[email protected]>--- package/norm/0003-fix-const-qualifier-gcc7.patch | 44 ++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 package/norm/0003-fix-const-qualifier-gcc7.patchpackage/norm/0003-fix-const-qualifier-gcc7.patch new file +44
-0@@ -0,0 +1,44 @@ +protolib: remove const qualifiers in ProtoSortedTreeTemplate + +The methods PeekPrevItem() and PeekNextItem() in +ProtoSortedTreeTemplate were using a const qualifier, but not the +corresponding methods in ProtoSortedTree, causing a build failure with +gcc 7.x: + +norm-1.5r6/protolib/include/protoTree.h: In member function 'ITEM_TYPE* ProtoSortedTreeTemplate<ITEM_TYPE>::Iterator::PeekPrevItem() const': +norm-1.5r6/protolib/include/protoTree.h:652:93: error: no matching function for call to 'ProtoSortedTreeTemplate<ITEM_TYPE>::Iterator::PeekPrevItem() const' + {return static_cast<ITEM_TYPE*>(ProtoSortedTree::Iterator::PeekPrevItem());} + ^ +norm-1.5r6/protolib/include/protoTree.h:565:23: note: candidate: ProtoSortedTree::Item* ProtoSortedTree::Iterator::PeekPrevItem() <near match> + Item* PeekPrevItem() + ^~~~~~~~~~~~ + +Since the same methods in ProtoTreeTemplate don't have the const +qualifier, we take the simple solution of dropping such qualifiers +from ProtoSortedTreeTemplate as well, which fixes the build of norm +with gcc 7.x. + +Many thanks to Romain Naour <[email protected]> for pointing out +the solution. + +Signed-off-by: Thomas Petazzoni <[email protected]> + +Index: b/protolib/include/protoTree.h +=================================================================== +--- a/protolib/include/protoTree.h ++++ b/protolib/include/protoTree.h +@@ -648,12 +648,12 @@ + + ITEM_TYPE* GetPrevItem() + {return static_cast<ITEM_TYPE*>(ProtoSortedTree::Iterator::GetPrevItem());} +- ITEM_TYPE* PeekPrevItem() const ++ ITEM_TYPE* PeekPrevItem() + {return static_cast<ITEM_TYPE*>(ProtoSortedTree::Iterator::PeekPrevItem());} + + ITEM_TYPE* GetNextItem() + {return static_cast<ITEM_TYPE*>(ProtoSortedTree::Iterator::GetNextItem());} +- ITEM_TYPE* PeekNextItem() const ++ ITEM_TYPE* PeekNextItem() + {return static_cast<ITEM_TYPE*>(ProtoSortedTree::Iterator::PeekNextItem());} + + }; // end class ProtoSortedTreeTemplate::Iterator
Thomas Petazzoni
AppliedPATCH 1/1 norm: fix build with gcc 7.x
In reply to Thomas PetazzoniHello,
Quoted 6 lines · Thomas Petazzoni
This commit adds a patch to the norm package that fixes the build with gcc 7.x. Many thanks to Romain Naour for pointing out the solution to this C++ build problem.
Fixes:
Quoted 7 lines
http://autobuild.buildroot.net/results/c79dc84cdc34d62199099eb4438b1aed3e7459bb/
Signed-off-by Thomas Petazzoni <[email protected]>--- package/norm/0003-fix-const-qualifier-gcc7.patch | 44 ++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 package/norm/0003-fix-const-qualifier-gcc7.patch
Applied to master, after adding details regarding the upstream status of the patch (it has been accepted).
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com