Forum Replies Created
-
AuthorPosts
-
JensaParticipant
Last image since I was only allowed to attach 4 to previous post.
Attachments:
You must be logged in to view attached files.JensaParticipantHi,
See attached images for the available callstacks.
Attachments:
You must be logged in to view attached files.JensaParticipantThanks for trying 🙂
With VisualStudio it works fine to build and nothing seems to hang after it’s completed. As you can see in the log when using MsBuild it does work and it’s completely built the only problem is that MsBuild doesn’t exit after which causes our build scripts to hang.
I tried without the /t switch and it was exactly the same. The attached log was from a clean “Hello, World” project so unfortunately that doesn’t work either. Also tried now building on the remote target and it hangs at the exact same place.
A normal VC++ Win32 project works fine though which is why I posted it here and not at MS site.
See new attached logs of one VC++ and one VisualGDB remote build. This time I included the logged “CTRL+C” break at the end of the linux one which is the problem that it’s needed.
Any other ideas of what could cause this is appreciated.
Attachments:
You must be logged in to view attached files.JensaParticipantHi,
We started getting another error as well in our real project. Not sure if it’s the amount of tests that are getting many which is why it fails or what it is but we didn’t get this error earlier today. We’re constantly writing more tests so it’s increasing all the time and the names are quite long.
I tried to remove a file with tests so we went from 190 to 172 and it worked again.See attached for error.
Attachments:
You must be logged in to view attached files.JensaParticipantHi,
Got the same with X11 disabled.
See attached logs for more info.
Regards
Jens NilssonAttachments:
You must be logged in to view attached files.JensaParticipantUnfortunetly I can’t find a stacktrace anywhere in the logs.
I’ll attach some logs from a time when it happened on a unchanged google unit test template project. What I did to get it was first a rebuild. Then from the Test Explorer I did “Run All”. It ran ok the first time. Then I selected the top level of the tests and right clicked and clicked “Run selected tests” from there. That’s when it happened this time.
Attachments:
You must be logged in to view attached files.JensaParticipantHi,
That did indeed solve it.
Thanks!
JensaParticipantHmm, it seems what I read earlier is no longer true and they now discourage the use of underscore in any name so I guess we’ll just stop using it instead.
JensaParticipantHi,
The “Watch” window shows the correct value as well. I think the issue is that when you hoover over the “var” part of “test_struct.var” it doesn’t recognize it as a member of the test_struct struct but just shows the local variable “var” instead.
I changed the code a bit to show more clearly what I mean. When I hoover over the “no_var” part of “test_struct.no_var” member the popup window shows “test_struct.no_var | 0x0000016”. But when I hoover over the “var” part of “test_struct.var” it just shows “var | 0x0000000a”. No “test_struct.” before “var”.
New code:
#include <iostream> using namespace std; typedef struct { int var; int no_var; } TestStruct; TestStruct foo( int var ) { TestStruct test_struct; test_struct.var = 22; test_struct.no_var = 22; test_struct.var = var; test_struct.no_var = var; return test_struct; } int main( int argc, char * argv[] ) { TestStruct test_struct = foo( 10 ); return 0; }
Attachments:
You must be logged in to view attached files.JensaParticipantHi,
The “print test_struct.var” command does print the correct output of the test_struct.var member and not the local var variable:
&"print test_struct.var\n" $1 = 22
The GUI does still however show the local var variable value when you hover over the ‘.var’ member. When you hoover over the test_struct variable though it shows the correct value of the var member and also the ‘Autos’ and ‘Locals’ windows shows it correct. It’s just that when you hoover over the “var” part of the “test_struct.var” code that it shows wrong. It also as you can see shows the variable name as “var” only and not “test_struct.var” which it usually does when it shows the correct struct member value.
Optimization is set to “Disabled (-O0)”. I haven’t done any changes from the default project template for a linux application and run the Debug configuration of that.
JensaParticipantI don’t really care about the license thing but a solution might be to not auto-switch to the “GDB Session” every time you debug something. To me it’s starting to get frustrating as well since all I want is the “Output” tab but I need to manually switch it every time I start debugging. Changing so it either remembers the last active tab in the debug context and goes there or an option to set which tab it displays etc would be a great help even for me. That would also fix the issue of it displaying the licensing window every time but perhaps that’s what you want?
JensaParticipantThanks,
That did indeed fix both issues.
Regards
Jens NilssonJensaParticipant#include <iostream> using namespace std; class Test { void foo() { boolean = true; } // True or false bool boolean; }; static void foo_function( int var_with_underscore ) { var_with_underscore++; } int main( int argc_test, char * argv[] ) { foo_function( 0 ); char sz[] = "Hello, World!"; //Hover mouse over "sz" while debugging to see its contents cout << sz << endl; //<================= Put a breakpoint here return 0; }
JensaParticipantHi,
Thanks, that works a bit more consistently indeed and it supports most things that we want from it.
I guess now I just gotta pester the CLANG team to implement the last few strange things our coding standards want 🙂
Regards
Jens Nilsson
-
AuthorPosts