After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 555743 - warning in glibmm
warning in glibmm
Status: RESOLVED FIXED
Product: glibmm
Classification: Bindings
Component: general
2.17.x
Other Linux
: Normal normal
: ---
Assigned To: gtkmm-forge
gtkmm-forge
Depends on:
Blocks:
 
 
Reported: 2008-10-10 00:27 UTC by Hubert Figuiere (:hub)
Modified: 2008-11-29 17:18 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (5.02 KB, patch)
2008-11-29 05:50 UTC, Hubert Figuiere (:hub)
committed Details | Review

Description Hubert Figuiere (:hub) 2008-10-10 00:27:29 UTC
When building with glibmm 2.17.3 I get these warnings:

/usr/include/glibmm-2.4/glibmm/nodetree.h: In constructor ‘Glib::NodeTree<T>::NodeTree(const T&)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:103: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::insert_data(int, const T&)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:222: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::insert_data_before(Glib::NodeTree<T>&, const T&)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:236: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::append_data(const T&)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:249: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::prepend_data(const T&)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:262: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::find_child(const T&, Glib::NodeTree<T>::TraverseFlags)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:345: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘const Glib::NodeTree<T>* Glib::NodeTree<T>::find_child(const T&, Glib::NodeTree<T>::TraverseFlags) const’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:364: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::find(const T&, Glib::TraverseType, Glib::NodeTree<T>::TraverseFlags)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:377: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘const Glib::NodeTree<T>* Glib::NodeTree<T>::find(const T&, Glib::TraverseType, Glib::NodeTree<T>::TraverseFlags) const’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:398: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘int Glib::NodeTree<T>::child_index(const T&) const’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:409: warning: declaration of ‘data’ shadows a member of 'this'
Comment 1 Murray Cumming 2008-10-11 11:43:33 UTC
How about glibmm 2.18.0?
Comment 2 Jonathon Jongsma 2008-10-13 01:34:02 UTC
yeah, seems that this should be fixed since the class member is now named 'data_', not 'data' (though I wonder why we didn't use our normal convention and call it 'm_data'...).  Hubert, can you confirm?
Comment 3 Murray Cumming 2008-10-13 08:48:32 UTC
I'd be happy to change to m_. It should be no API/ABI problem.
Comment 4 Murray Cumming 2008-10-20 14:33:51 UTC
I won't change to an m_ prefix because we actually use a _ suffix in other places, such as in objectbase.h

So I assume that there is nothing left to do for this bug.
Comment 5 Hubert Figuiere (:hub) 2008-11-27 06:11:31 UTC
sorry but I have to reopen this:


/usr/include/glibmm-2.4/glibmm/nodetree.h: In constructor ‘Glib::NodeTree<T>::NodeTree(const T&)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:103: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::insert_data(int, const T&)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:222: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::insert_data_before(Glib::NodeTree<T>&, const T&)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:236: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::append_data(const T&)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:249: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::prepend_data(const T&)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:262: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::find_child(const T&, Glib::NodeTree<T>::TraverseFlags)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:345: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘const Glib::NodeTree<T>* Glib::NodeTree<T>::find_child(const T&, Glib::NodeTree<T>::TraverseFlags) const’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:364: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘Glib::NodeTree<T>* Glib::NodeTree<T>::find(const T&, Glib::TraverseType, Glib::NodeTree<T>::TraverseFlags)’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:377: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘const Glib::NodeTree<T>* Glib::NodeTree<T>::find(const T&, Glib::TraverseType, Glib::NodeTree<T>::TraverseFlags) const’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:398: warning: declaration of ‘data’ shadows a member of 'this'
/usr/include/glibmm-2.4/glibmm/nodetree.h: In member function ‘int Glib::NodeTree<T>::child_index(const T&) const’:
/usr/include/glibmm-2.4/glibmm/nodetree.h:409: warning: declaration of ‘data’ shadows a member of 'this'



version is 2.18.1
Comment 6 Murray Cumming 2008-11-27 09:10:22 UTC
A patch would be welcome.
Comment 7 Hubert Figuiere (:hub) 2008-11-28 13:40:02 UTC
The other problem is that NodeTree::data() exists. So what if the function parameter is named _data to not conflict? Will craft a patch.
Comment 8 Murray Cumming 2008-11-28 17:47:39 UTC
Oh, that's an annoying check.

I'd prefer the_data or something else not involving a leading or trailing _. Thanks.
Comment 9 Hubert Figuiere (:hub) 2008-11-28 20:15:31 UTC
(In reply to comment #8)
> Oh, that's an annoying check.

That's actually an important one

> I'd prefer the_data or something else not involving a leading or trailing _.
> Thanks.

ok.
Comment 10 Hubert Figuiere (:hub) 2008-11-29 05:50:22 UTC
Created attachment 123639 [details] [review]
patch

If the patch is OK for you, I can commit it to trunk.
Comment 11 Murray Cumming 2008-11-29 12:00:55 UTC
Yes, please, and to the latest branch, with a ChangeLog entry. Thanks.
Comment 12 Hubert Figuiere (:hub) 2008-11-29 17:18:35 UTC
Committed to trunk (as there is no 2.18 branch)

This problem has been fixed in our software repository. The fix will go into the next software release. Thank you for your bug report.