Saturday 15 February 2014

xcode - lldb issue with the binary from clang++ on Mac -


मेरे पास क्लैग ++ 4.1

  क्लैग ++-वी एप्पल कलंक संस्करण 4.1 (टैग / एप्पल / क्लैंग-421.11.66) (एलएलवीएम 3.1एसvn पर आधारित) लक्ष्य: x86_64-apple-darwin11.4.2 थ्रेड मॉडल: पॉज़िक्स   

मेरे पास एलएलडीबी 167.5

 < कोड> एलडीडी-वी एलडीबी -167.5   

मैंने इस कमांड के साथ साधारण सी ++ कोड संकलित किया है।

  clang ++ testit.cpp -std = c ++ 11 - जब मैंने इसे एलएलडीबी के साथ डिबग करने की कोशिश की, तो मैंने एलडीडी। / ए को निष्पादित किया,  b main  के साथ ब्रेक पॉइंट सेट करें और रन करें।  
  lldb) प्रक्रिया 44582 लॉन्च की गई: '/ उपयोगकर्ता / smcho / desktop / cpp11 / lldb / a' (x86_64) प्रक्रिया 44582 * थ्रेड # 1 को रोक दिया: टीआईडी ​​= 0x1f03, 0x00000001000007e8 a`main [Inlined] std :: __ 1 :: __ वेक्टर_बेस & lt; std :: __ 1 :: unique_ptr & lt; ए, std :: __ 1 :: default_delete & lt; ए & gt; & Gt ;, std :: __ 1 :: आबंटक & lt; std :: __ 1 :: unique_ptr & lt; ए, std :: __ 1 :: default_delete & lt; ए & gt; & Gt; & Gt; & Gt; :: __ वेक्टर पर vector_base (): 460, कारण रोक = ब्रेकप्वाइंट 1.1 फ्रेम # 0: 0x00000001000007e8 a`main [inlined] std :: __ 1 :: __ vector_base & LT; std :: __ 1 :: unique_ptr & lt; a, std :: __ 1 :: default_delete & lt; a & gt; & Gt ;, std :: __ 1 :: आबंटक & lt; std :: __ 1 :: unique_ptr & lt; ए, std :: __ 1 :: default_delete & lt; ए & gt; & Gt; & Gt; ; & Gt :: __ वेक्टर पर vector_base (): 460 457 _NOEXCEPT_ (; allocator_type & gt; is_nothrow_default_constructible करें & lt :: मूल्य) 458: __begin_ (0), 459 __end_ (0), - & gt; 460 __end_cap_ (0) 461 {462} 463   

सी ++ स्रोत कोड इस पोस्ट में है:

क्या गलत हो सकता है?

कुछ भी विशेष रूप से गलत नहीं है आप (यहां तक ​​कि -O0, हाँ पर) libc ++ जो भारी इनलाइनिंग करता है का उपयोग कर रहे हैं - कि मुख्य () libc साथ interleaved है ++ कोड में अपने कोड अपने मुख्य में पहला कदम () एक std :: वेक्टर बनाने के लिए है का मतलब है, और आप वास्तव में Std :: vector (इसका आधार वर्ग, अर्थात्) के लिए (inlined) कन्स्ट्रक्टर में बंद कर दिया जाता है। यह आपके कॉल में पहला "उपयोगकर्ता" निर्देश होता है आप अपने उपयोगकर्ता-स्तर कोड पर "अगला" में सक्षम होना चाहिए।

No comments:

Post a Comment