<div dir="ltr">I am compiling the following code with clang TOT (clang version 3.7.0 (trunk 234376) (llvm/trunk 234392) Target: x86_64-unknown-linux-gnu Thread model: posix) with the following command:<div><br></div><div>=== source ===</div><div>class myInt {<br></div><div><div>public: myInt(int _x) : theValue(_x) {}</div><div>private: int theValue;</div><div>};</div><div><br></div><div>int main() {</div><div>    myInt x{3};</div><div>    return 0;</div><div>}</div></div><div><br></div><div>=== compile command ===</div><div>./bin/clang++ --std=c++11 ~/tmp/C12.cpp</div><div><br></div><div>After compilation I see a symbol created for the constructor with name "_ZN5myIntC2Ei" what is the base object constructor but I don't have a symbol for "_ZN5myIntC1Ei" what would be the complete object constructor.</div><div><br></div><div>This issue cause us some problem in LLDB during expression evaluation so I am interested if it is a bug (and clang should generate both symbol as gcc do) or it is an intended behavior as an optimization. In either case I would appreciate if someone can give me an idea about what is the case when only one of the symbol is emitted so I can handle that case in LLDB properly.</div><div><br></div><div>Thanks,</div><div>Tamas</div></div>