Skip to contentSkip to conversation

norm: fix build with gcc 7.x

PATCH New Thomas Petazzoni 2 participants 4 messages Aug 20, 2017 – Aug 21, 2017

lore
Share & tools
lore
#0 lore raw

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
new file mode 100644
index 0000000..3d9671f
@@ -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
#1 lore raw

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
#2 lore raw

PATCH 1/1 norm: fix build with gcc 7.x

In reply to Thomas Petazzoni

Hi 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
---
 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
new file mode 100644
index 0000000..3d9671f
@@ -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
author Applied
#3 lore raw

PATCH 1/1 norm: fix build with gcc 7.x

In reply to Thomas Petazzoni

Hello,

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/

---
 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