set<int> in Qt creator and debugger
-
I see the same with Qt 5.7.1 and MinGW 5.3.0.
Wasn't there something to be installed alongside with the tools for debugging with gdb?
[edit, koahnig] That is what I remembered. Found in here
GDB On Windows, use the Python-enabled GDB versions that is bundled with the Qt package or comes with recent versions of MinGW. On most Linux distributions the GDB builds shipped with the system are sufficient. You can also build your own. Follow the instructions in Building GDB. Builds of GDB shipped with Xcode on macOS are no longer supported. -
Here is a link to the second picture. Part of the picture is the first picture anyway.
-
@koahnig said in set<int> in Qt creator and debugger:
What do you mean with buckets?
Whatever this would be, shouldn't it non-repeating?No, it can be repeating, it depends on the internal structure of
std::set
. I assumed (erroneously) the set is implemented as a hash-table (like in Qt), so that's where "buckets" come from - it's the index of the array where the actual data is kept. Anyway, after a quick lookup I see it's a red-black tree (i.e. likeQMap
), so my new hypothesis is you're looking at the node index be it left node or right. I'd even make a further step and speculate0
is the root node,1
is the left node and2
is the right node (relative to the parent).In any case you should probably file a bug report on it, as the debug helpers don't seem to properly resolve the actual data.
-
Bug report filed QTCREATORBUG-17653
-
Thanks for checking.
This reflects my memory. I had upgraded recently to latest qt creator version, but left all the different Qt lib version and their associated tools, respectively there might be an update somewhere, but not on all different Qt lib versions.
I am pretty sure that the display worked prior to the upgrade of creator.
Unfortunately, I cannot go back easily to previous Qt creator setup for checking. At least I will not dare to do, because there have been adaptations to project setups.
-
@mrjj
Not sure, but I think I had a 4.1.x already bnefore upgrading. This would correlate with your findings.
[edit:koahnig] Yes, the change to V4.2.1 brought up the problem.I am too "old-fashioned" to keep track of this.
In general I am a slow upgrader, because "Never change a running system". Therefore, I am mainly using 5.4.2 at the moment. This gives the nasty message when starting up the application on win10, but it works and that is the point. -
@koahnig
So if I upgrade my Creator, i should get the same. maybe.
You just download other Creator from
https://download.qt.io/official_releases/qtcreator/4.2/4.2.1/
and run it ? -
@mrjj
No, I simply used the maintenance tool and used the second entry (updating/upgrading?).
Therefore, there could be also some updates invloved for the other tools. I did not pay attention, but it is probably save to assume that the installation for Qt5.4.2 stayed as it was. -
I doubt that creator 3.6 can load plugins of version 4.2.1.
I had wasted a while ago my time with enhancing the doxygen plugin. My rational was that at least I can use while doing a complete compilation of creator with all plugins. However, I had found out that another plugin, which I was relying on, changed interface. Adding the mostly non-existing documentation for feaures and interfaces completes in my opinion the nightmare.
Do you know if you can use plugins the other way around (e.g. 3.6 plugins in 4.2)?
Respectively, can you mix MinGW plugins with VS plugins?
The latter one is probably killed by incompatibility of different compilers, or is that assumption wrong? -
@koahnig
yes i assume only minor version will work.
I have 2 creators installed currently. seems to work.
Im not sure how compatible the plugins are but going to try an older creator:)We cannot use mingw plugins unless creator is compiled with mingw. I made such version to make
testing Designer plugins easier. but to run in the normal creator it must be compiled with vs 2013 or 2015 for 5.8