Never mind, top of tree LLDB is working correctly. I ran our Apple built LLDB
that had a different version of this -gmodule fix for an Apple specific version
we did and it shows the same issue so I was led to believe this existed for a
while now, but it is definitely due to the -gmodule patch.
So the question is why is "S" being found in "std" when we are essentially
looking for "::S"?? Do we have a "using namespace std;" in the source? We
recently added support for using all of the using directives in the user code
so it might be doing a "using namespace std;" into the expression
So I was able to repro this with the following code:
#include
#include
namespace a
{
struct S
{
int s;
int ss;
};
}
int main (int argc, char const *argv[], char const *envp[])
{
a::S s = { 11, 22 };
puts("stop here"); // evaluate expression: