slackito wrote:

Hi,

I'm having some problems with one of our tests, that also reproduce after 
[#114337](https://github.com/llvm/llvm-project/pull/114337).

I don't have a repro yet but I'll describe what I know of the problem so far in 
case it rings a bell.

The test in question has a common source file with the following structure:
```
#if defined(PROTO_V2)
#include "test_proto_v2.pb.h"
namespace proto_v2 {
#elif defined(PROTO_V3)
#include "test_proto_v3.proto.h"
namespace proto_v3 {
#elif...
// some more cases
#endif

void DoSomeStuff() {
  // common logic goes here
}

}  // end whatever namespace got selected
```

This file gets compiled multiple times with `-DPROTO_V2`, `-DPROTO_V3` and so 
on, and all of them get linked into a binary. Each version goes into a 
different namespace so there are no duplicate definitions of anything, it's 
just a little hack to avoid having four separate files with mostly the same 
code.

Before this commit, running `b common.cc:123` results in a breakpoint with N 
locations. After this commit, only one of them gets selected.

I'll do my best to share a repro case later today.

https://github.com/llvm/llvm-project/pull/114158
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to