[lldb-dev] lldb tests
Filipe Cabecinhas
filcab at gmail.com
Fri Mar 30 02:54:10 PDT 2012
Hi,
Attahced is the output of the test ran in verbose mode.
There's a very weird 'foo' that is shown after I enabled logging in the test (I enables verbose formatter logging right before the instruction that fails).
That print comes from stdmap_SynthProvider.get_child_at_index(), on line 546 of the Python/libcxx.py file. It seems like some kind of error, maybe you know what it's about (Something unfinished in that file?).
Filipe
On Thursday, March 29, 2012 at 6:31 PM, Enrico Granata wrote:
> Hi,
>
> a good first step is for you to run the test in verbose mode and attach the output.
> You can also try to manually repeat the test case behavior and seeing what you get.
>
> Moving from there should not be too complicated.
>
> As for tool versions, I am using a previous version of swig because of licensing issues. I also have a more recent clang based off LLVM 3.1 svn. I am not sure why that would be the case but given that the test case at fault here is related to libc++ I would guess that the build of libc++ has something to do with it. However, we are on the same OSX version.
>
> Thanks.
>
> Enrico Granata
> ✉ egranata@.com
> ✆ (four oh eight) 862-7683
>
>
>
>
>
>
>
> On Mar 29, 2012, at 8:01 AM, Filipe Cabecinhas wrote:
> > Hi Enrico,
> >
> > That's weird. Let's try to find out what went wrong. Previously I was using an up-to-date git checkout, but now I checked out the trunk directly from subversion so we can be sure we're on the same revision.
> >
> > I have:
> > Mac OS X 10.7.3
> > swig 2.0.4
> > Python 2.7.1
> > libedit.3.0.dylib
> > Apple clang version 3.1 (tags/Apple/clang-318.0.58)
> >
> > I build lldb with xcodebuild -configuration Debug
> > For the x86_64 arch:
> > file build/Debug/lldb
> > build/Debug/lldb: Mach-O 64-bit executable x86_64
> >
> >
> > If I try a BuildAndIntegration build (without the -configuration flag), I get this error when running lldb:
> > [trunk:153576//test]% ../build/BuildAndIntegration/lldb
> > dyld: Library not loaded: @rpath/LLDB.framework/LLDB
> > Referenced from: /Users/filcab/Desktop/lldb/test/../build/BuildAndIntegration/lldb
> > Reason: image not found
> >
> >
> > Since I usually use the Debug configuration, I have no idea what's going on. LLDB.framework is in its place (next do lldb) and has the LLDB symlink and file in place, too.
> >
> > Any clues?
> >
> > Regards,
> >
> > Filipe
> >
> > Filipe
> >
> >
> > On Wednesday, March 28, 2012 at 4:09 PM, Enrico Granata wrote:
> >
> > > Hi.
> > > Not sure what's wrong:
> > >
> > > Enricos-MacBook-Pro:test egranata$ make -C functionalities/data-formatter/data-formatter-stl/libcxx/map
> > > clang++ -gdwarf-2 -O0 -arch x86_64 -stdlib=libc++ -O0 -c -o main.o main.cpp
> > > clang++ -gdwarf-2 -O0 -arch x86_64 -stdlib=libc++ main.o -o "a.out"
> > > dsymutil -o "a.out.dSYM" "a.out"
> > > Enricos-MacBook-Pro:test egranata$ ./dotest.py -A x86_64 -C clang -v -t -f LibcxxMapDataFormatterTestCase.data_formatter_commands
> > > LLDB build dir: /Volumes/work/egranata/lldb/build/Debug
> > > LLDB-135
> > > Path: /Volumes/work/egranata/lldb
> > > URL: https://enrico@llvm.org/svn/llvm-project/lldb/trunk
> > > Repository Root: https://enrico@llvm.org/svn/llvm-project
> > > Repository UUID: 91177308-0d34-0410-b5e6-96231b3b80d8
> > > Revision: 153542
> > > Node Kind: directory
> > > Schedule: normal
> > > Last Changed Author: enrico
> > > Last Changed Rev: 153541
> > > Last Changed Date: 2012-03-27 14:49:20 -0700 (Tue, 27 Mar 2012)
> > >
> > >
> > >
> > > Session logs for test failures/errors/unexpected successes will go into directory '2012-03-28-08_07_33'
> > > Command invoked: python ./dotest.py -A x86_64 -C clang -v -t -f LibcxxMapDataFormatterTestCase.data_formatter_commands
> > > compilers=['clang']
> > >
> > > Configuration: arch=x86_64 compiler=clang
> > > ----------------------------------------------------------------------
> > > Collected 1 test
> > >
> > > Change dir to: /Volumes/work/egranata/lldb/test/functionalities/data-formatter/data-formatter-stl/libcxx/map
> > > 1: data_formatter_commands (TestDataFormatterLibccMap.LibcxxMapDataFormatterTestCase)
> > > Test that that file and class static variables display correctly. ... runCmd: file a.out
> > > output: Current executable set to 'a.out' (x86_64).
> > >
> > >
> > > runCmd: breakpoint set -f main.cpp -l 18
> > > output: Breakpoint created: 1: file ='main.cpp', line = 18, locations = 2
> > >
> > >
> > > Expecting start string: Breakpoint created: 1: file ='main.cpp', line = 18
> > > Matched
> > >
> > > runCmd: run
> > > output: Process 63894 launched: '/Volumes/work/egranata/lldb/test/functionalities/data-formatter/data-formatter-stl/libcxx/map/a.out' (x86_64)
> > >
> > >
> > > runCmd: thread list
> > > output: Process 63894 stopped
> > > * thread #1: tid = 0x1f03, 0x0000000100001272 a.out`main + 50 at main.cpp:18, stop reason = breakpoint 1.1
> > >
> > >
> > > Expecting sub string: stopped
> > > Matched
> > >
> > > Expecting sub string: stop reason = breakpoint
> > > Matched
> > >
> > > Adding tearDown hook: def cleanup():
> > > self.runCmd('type format clear', check=False)
> > > self.runCmd('type summary clear', check=False)
> > > self.runCmd('type filter clear', check=False)
> > > self.runCmd('type synth clear', check=False)
> > > self.runCmd("settings set target.max-children-count 256", check=False)
> > >
> > >
> > > runCmd: image list
> > > output: [ 0] 5C5C5498-A95A-32CC-9A48-353CFF04179A 0x0000000100000000 /Volumes/work/egranata/lldb/test/functionalities/data-formatter/data-formatter-stl/libcxx/map/a.out
> > > /Volumes/work/egranata/lldb/test/functionalities/data-formatter/data-formatter-stl/libcxx/map/a.out.dSYM/Contents/Resources/DWARF/a.out
> > > [ 1] 0CD1B35B-A28F-32DA-B72E-452EAD609613 0x00007fff5fc00000 /usr/lib/dyld
> > > [ 2] C0EFFF1B-0FEB-3F99-BE54-506B35B555A9 0x00007fff90339000 /usr/lib/libc++.1.dylib
> > > [ 3] 7BEBB139-50BB-3112-947A-F4AA168F991C 0x00007fff91f4e000 /usr/lib/libSystem.B.dylib
> > > [ 4] 8FF3D766-D678-36F6-84AC-423C878E6D14 0x00007fff9030e000 /usr/lib/libc++abi.dylib
> > > [ 5] B7757E2E-5A7D-362E-AB71-785FE79E1527 0x00007fff94222000 /usr/lib/system/libcache.dylib
> > > [ 6] A5B9778E-11C3-3F61-B740-1F2114E967FB 0x00007fff8af52000 /usr/lib/system/libcommonCrypto.dylib
> > > [ 7] 98ECD5F6-E85C-32A5-98CD-8911230CB66A 0x00007fff8bfe9000 /usr/lib/system/libcompiler_rt.dylib
> > > [ 8] 172B1985-F24A-34E9-8D8B-A2403C9A0399 0x00007fff8e58e000 /usr/lib/system/libcopyfile.dylib
> > > [ 9] 712AAEAC-AD90-37F7-B71F-293FF8AE8723 0x00007fff8db82000 /usr/lib/system/libdispatch.dylib
> > > [ 10] 718A135F-6349-354A-85D5-430B128EFD57 0x00007fff89059000 /usr/lib/system/libdnsinfo.dylib
> > > [ 11] F1903B7A-D3FF-3390-909A-B24E09BAD1A5 0x00007fff9489d000 /usr/lib/system/libdyld.dylib
> > > [ 12] 61EFED6A-A407-301E-B454-CD18314F0075 0x00007fff8afbf000 /usr/lib/system/libkeymgr.dylib
> > > [ 13] 39EF04F2-7F0C-3435-B785-BF283727FFBD 0x00007fff8e39f000 /usr/lib/system/liblaunch.dylib
> > > [ 14] D86F63EC-D2BD-32E0-8955-08B5EAFAD2CC 0x00007fff8e398000 /usr/lib/system/libmacho.dylib
> > > [ 15] FF83AFF7-42B2-306E-90AF-D539C51A4542 0x00007fff8dbdb000 /usr/lib/system/libmathCommon.A.dylib
> > > [ 16] 48656562-FF20-3B55-9F93-407ACA7341C0 0x00007fff8dc20000 /usr/lib/system/libquarantine.dylib
> > > [ 17] 739E6C83-AA52-3C6C-A680-B37FE2888A04 0x00007fff8e576000 /usr/lib/system/libremovefile.dylib
> > > [ 18] 8BCA214A-8992-34B2-A8B9-B74DEACA1869 0x00007fff8e396000 /usr/lib/system/libsystem_blocks.dylib
> > > [ 19] FF69F06E-0904-3C08-A5EF-536FAFFFDC22 0x00007fff9524c000 /usr/lib/system/libsystem_c.dylib
> > > [ 20] 7749128E-D0C5-3832-861C-BC9913F774FA 0x00007fff951aa000 /usr/lib/system/libsystem_dnssd.dylib
> > > [ 21] 35F90252-2AE1-32C5-8D34-782C614D9639 0x00007fff9400b000 /usr/lib/system/libsystem_info.dylib
> > > [ 22] 69F2F501-72D8-3B3B-8357-F4418B3E1348 0x00007fff945a5000 /usr/lib/system/libsystem_kernel.dylib
> > > [ 23] 5DE7024E-1D2D-34A2-80F4-08326331A75B 0x00007fff959f7000 /usr/lib/system/libsystem_network.dylib
> > > [ 24] A4D651E3-D1C6-3934-AD49-7A104FD14596 0x00007fff89b58000 /usr/lib/system/libsystem_notify.dylib
> > > [ 25] 5087ADAD-D34D-3844-9D04-AFF93CED3D92 0x00007fff8cf42000 /usr/lib/system/libsystem_sandbox.dylib
> > > [ 26] C67B3B14-866C-314F-87FF-8025BEC2CAAC 0x00007fff902a6000 /usr/lib/system/libunc.dylib
> > > [ 27] 1E9C6C8C-CBE8-3F4B-A5B5-E03E3AB53231 0x00007fff9485b000 /usr/lib/system/libunwind.dylib
> > > [ 28] 26C05F31-E809-3B47-AF42-1460971E3AC3 0x00007fff8af95000 /usr/lib/system/libxpc.dylib
> > >
> > >
> > > Expecting sub string: libc++.1.dylib
> > > Matched
> > >
> > > Expecting sub string: libc++abi.dylib
> > > Matched
> > >
> > > runCmd: frame variable ii -T
> > > output: (std::__1::map<int, int, std::__1::less<int>, std::__1::allocator<pair<const int, int> > >) ii = size=0 {}
> > >
> > >
> > > runCmd: type summary add -x "std::__1::map<" --summary-string "map has ${svar%#} items" -e
> > > output:
> > >
> > > runCmd: frame variable ii
> > > output: (std::__1::map<int, int, std::__1::less<int>, std::__1::allocator<pair<const int, int> > >) ii = map has 0 items {}
> > >
> > >
> > > Expecting sub string: map has 0 items
> > > Matched
> > >
> > > Expecting sub string: {}
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame variable ii
> > > output: (std::__1::map<int, int, std::__1::less<int>, std::__1::allocator<pair<const int, int> > >) ii = map has 2 items {
> > > [0] = {
> > > first = 0
> > > second = 0
> > > }
> > > [1] = {
> > > first = 1
> > > second = 1
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 2 items
> > > Matched
> > >
> > > Expecting sub string: [0] = {
> > > Matched
> > >
> > > Expecting sub string: first = 0
> > > Matched
> > >
> > > Expecting sub string: second = 0
> > > Matched
> > >
> > > Expecting sub string: [1] = {
> > > Matched
> > >
> > > Expecting sub string: first = 1
> > > Matched
> > >
> > > Expecting sub string: second = 1
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame variable ii
> > > output: (std::__1::map<int, int, std::__1::less<int>, std::__1::allocator<pair<const int, int> > >) ii = map has 4 items {
> > > [0] = {
> > > first = 0
> > > second = 0
> > > }
> > > [1] = {
> > > first = 1
> > > second = 1
> > > }
> > > [2] = {
> > > first = 2
> > > second = 0
> > > }
> > > [3] = {
> > > first = 3
> > > second = 1
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 4 items
> > > Matched
> > >
> > > Expecting sub string: [2] = {
> > > Matched
> > >
> > > Expecting sub string: first = 2
> > > Matched
> > >
> > > Expecting sub string: second = 0
> > > Matched
> > >
> > > Expecting sub string: [3] = {
> > > Matched
> > >
> > > Expecting sub string: first = 3
> > > Matched
> > >
> > > Expecting sub string: second = 1
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame select 0
> > > output: frame #0: 0x0000000100001422 a.out`main + 482 at main.cpp:26
> > > a.out`main + 482 at main.cpp:26:
> > > -> 0x100001422: movl $85, -868(%rbp)
> > > 0x10000142c: leaq -868(%rbp), %rsi
> > > 0x100001433: leaq -808(%rbp), %rdi
> > > 0x10000143a: callq 0x10000b416 ; std::__1::map<int, int, std::__1::less<int>, std::__1::allocator<std::__1::pair<int const, int> > >::operator[](int const&)
> > >
> > >
> > > runCmd: frame variable ii
> > > output: (std::__1::map<int, int, std::__1::less<int>, std::__1::allocator<pair<const int, int> > >) ii = map has 8 items {
> > > [0] = {
> > > first = 0
> > > second = 0
> > > }
> > > [1] = {
> > > first = 1
> > > second = 1
> > > }
> > > [2] = {
> > > first = 2
> > > second = 0
> > > }
> > > [3] = {
> > > first = 3
> > > second = 1
> > > }
> > > [4] = {
> > > first = 4
> > > second = 0
> > > }
> > > [5] = {
> > > first = 5
> > > second = 1
> > > }
> > > [6] = {
> > > first = 6
> > > second = 0
> > > }
> > > [7] = {
> > > first = 7
> > > second = 1
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 8 items
> > > Matched
> > >
> > > Expecting sub string: [5] = {
> > > Matched
> > >
> > > Expecting sub string: first = 5
> > > Matched
> > >
> > > Expecting sub string: second = 0
> > > Matched
> > >
> > > Expecting sub string: [7] = {
> > > Matched
> > >
> > > Expecting sub string: first = 7
> > > Matched
> > >
> > > Expecting sub string: second = 1
> > > Matched
> > >
> > > runCmd: p ii
> > > output: (std::__1::map<int, int, std::__1::less<int>, std::__1::allocator<pair<const int, int> > >) $0 = map has 8 items {
> > > (std::__1::__tree_node<std::__1::pair<int, int>, void *>::value_type) [0] = {
> > > (int) first = 0
> > > (int) second = 0
> > > }
> > > (std::__1::__tree_node<std::__1::pair<int, int>, void *>::value_type) [1] = {
> > > (int) first = 1
> > > (int) second = 1
> > > }
> > > (std::__1::__tree_node<std::__1::pair<int, int>, void *>::value_type) [2] = {
> > > (int) first = 2
> > > (int) second = 0
> > > }
> > > (std::__1::__tree_node<std::__1::pair<int, int>, void *>::value_type) [3] = {
> > > (int) first = 3
> > > (int) second = 1
> > > }
> > > (std::__1::__tree_node<std::__1::pair<int, int>, void *>::value_type) [4] = {
> > > (int) first = 4
> > > (int) second = 0
> > > }
> > > (std::__1::__tree_node<std::__1::pair<int, int>, void *>::value_type) [5] = {
> > > (int) first = 5
> > > (int) second = 1
> > > }
> > > (std::__1::__tree_node<std::__1::pair<int, int>, void *>::value_type) [6] = {
> > > (int) first = 6
> > > (int) second = 0
> > > }
> > > (std::__1::__tree_node<std::__1::pair<int, int>, void *>::value_type) [7] = {
> > > (int) first = 7
> > > (int) second = 1
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 8 items
> > > Matched
> > >
> > > Expecting sub string: [5] = {
> > > Matched
> > >
> > > Expecting sub string: first = 5
> > > Matched
> > >
> > > Expecting sub string: second = 0
> > > Matched
> > >
> > > Expecting sub string: [7] = {
> > > Matched
> > >
> > > Expecting sub string: first = 7
> > > Matched
> > >
> > > Expecting sub string: second = 1
> > > Matched
> > >
> > > runCmd: frame variable ii[0]
> > > output: (std::__1::__tree_node<std::__1::pair<int, int>, void *>::value_type) [0] = {
> > > first = 0
> > > second = 0
> > > }
> > >
> > >
> > > Expecting sub string: first = 0
> > > Matched
> > >
> > > Expecting sub string: second = 0
> > > Matched
> > >
> > > runCmd: frame variable ii[3]
> > > output: (std::__1::__tree_node<std::__1::pair<int, int>, void *>::value_type) ii[3] = {
> > > first = 3
> > > second = 1
> > > }
> > >
> > >
> > > Expecting sub string: first =
> > > Matched
> > >
> > > Expecting sub string: second =
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame select 0
> > > output: frame #0: 0x000000010000151f a.out`main + 735 at main.cpp:32
> > > a.out`main + 735 at main.cpp:32:
> > > -> 0x10000151f: leaq -896(%rbp), %rdi
> > > 0x100001526: leaq -928(%rbp), %rsi
> > > 0x10000152d: callq 0x10000b3b6 ; std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, int> > >::operator[](std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
> > > 0x100001532: movq %rax, -1320(%rbp)
> > >
> > >
> > > runCmd: frame variable ii
> > > output: (std::__1::map<int, int, std::__1::less<int>, std::__1::allocator<pair<const int, int> > >) ii = map has 0 items {}
> > >
> > >
> > > Expecting sub string: map has 0 items
> > > Matched
> > >
> > > Expecting sub string: {}
> > > Matched
> > >
> > > runCmd: frame variable si -T
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, int> > >) si = map has 0 items {}
> > >
> > >
> > > runCmd: frame variable si
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, int> > >) si = map has 0 items {}
> > >
> > >
> > > Expecting sub string: map has 0 items
> > > Matched
> > >
> > > Expecting sub string: {}
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame select 0
> > > output: frame #0: 0x00000001000015e0 a.out`main + 928 at string:1781
> > > 1778 {
> > > 1779 #ifdef _LIBCPP_DEBUG
> > > 1780 assert(__s != 0);
> > > -> 1781 #endif
> > > 1782 __init(__s, traits_type::length(__s));
> > > 1783 }
> > > 1784
> > >
> > >
> > > runCmd: frame variable si
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, int> > >) si = map has 1 items {
> > > [0] = {
> > > first = "zero"
> > > second = 0
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 1 items
> > > Matched
> > >
> > > Expecting sub string: [0] =
> > > Matched
> > >
> > > Expecting sub string: first = "zero"
> > > Matched
> > >
> > > Expecting sub string: second = 0
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame select 0
> > > output: frame #0: 0x000000010000189f a.out`main + 1631 at main.cpp:36
> > > a.out`main + 1631 at main.cpp:36:
> > > -> 0x10000189f: leaq -896(%rbp), %rdi
> > > 0x1000018a6: leaq -1024(%rbp), %rsi
> > > 0x1000018ad: callq 0x10000b3b6 ; std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, int> > >::operator[](std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
> > > 0x1000018b2: movq %rax, -1448(%rbp)
> > >
> > >
> > > runCmd: frame variable si
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, int> > >) si = map has 4 items {
> > > [0] = {
> > > first = "one"
> > > second = 1
> > > }
> > > [1] = {
> > > first = "three"
> > > second = 3
> > > }
> > > [2] = {
> > > first = "two"
> > > second = 2
> > > }
> > > [3] = {
> > > first = "zero"
> > > second = 0
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 4 items
> > > Matched
> > >
> > > Expecting sub string: [0] =
> > > Matched
> > >
> > > Expecting sub string: first = "zero"
> > > Matched
> > >
> > > Expecting sub string: second = 0
> > > Matched
> > >
> > > Expecting sub string: [1] =
> > > Matched
> > >
> > > Expecting sub string: first = "one"
> > > Matched
> > >
> > > Expecting sub string: second = 1
> > > Matched
> > >
> > > Expecting sub string: [2] =
> > > Matched
> > >
> > > Expecting sub string: first = "two"
> > > Matched
> > >
> > > Expecting sub string: second = 2
> > > Matched
> > >
> > > Expecting sub string: [3] =
> > > Matched
> > >
> > > Expecting sub string: first = "three"
> > > Matched
> > >
> > > Expecting sub string: second = 3
> > > Matched
> > >
> > > runCmd: p si
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, int> > >) $1 = map has 4 items {
> > > (std::__1::__tree_node<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int>, void *>::value_type) [0] = {
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) first = "one"
> > > (int) second = 1
> > > }
> > > (std::__1::__tree_node<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int>, void *>::value_type) [1] = {
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) first = "three"
> > > (int) second = 3
> > > }
> > > (std::__1::__tree_node<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int>, void *>::value_type) [2] = {
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) first = "two"
> > > (int) second = 2
> > > }
> > > (std::__1::__tree_node<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int>, void *>::value_type) [3] = {
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) first = "zero"
> > > (int) second = 0
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 4 items
> > > Matched
> > >
> > > Expecting sub string: [0] =
> > > Matched
> > >
> > > Expecting sub string: first = "zero"
> > > Matched
> > >
> > > Expecting sub string: second = 0
> > > Matched
> > >
> > > Expecting sub string: [1] =
> > > Matched
> > >
> > > Expecting sub string: first = "one"
> > > Matched
> > >
> > > Expecting sub string: second = 1
> > > Matched
> > >
> > > Expecting sub string: [2] =
> > > Matched
> > >
> > > Expecting sub string: first = "two"
> > > Matched
> > >
> > > Expecting sub string: second = 2
> > > Matched
> > >
> > > Expecting sub string: [3] =
> > > Matched
> > >
> > > Expecting sub string: first = "three"
> > > Matched
> > >
> > > Expecting sub string: second = 3
> > > Matched
> > >
> > > runCmd: frame variable si[0]
> > > output: (std::__1::__tree_node<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int>, void *>::value_type) [0] = {
> > > first = "one"
> > > second = 1
> > > }
> > >
> > >
> > > Expecting sub string: first =
> > > Matched
> > >
> > > Expecting sub string: one
> > > Matched
> > >
> > > Expecting sub string: second = 1
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame variable si
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, int, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, int> > >) si = map has 0 items {}
> > >
> > >
> > > Expecting sub string: map has 0 items
> > > Matched
> > >
> > > Expecting sub string: {}
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame variable is -T
> > > output: (std::__1::map<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<int>, std::__1::allocator<pair<const int, std::__1::basic_string<char> > > >) is = map has 0 items {}
> > >
> > >
> > > runCmd: frame variable is
> > > output: (std::__1::map<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<int>, std::__1::allocator<pair<const int, std::__1::basic_string<char> > > >) is = map has 0 items {}
> > >
> > >
> > > Expecting sub string: map has 0 items
> > > Matched
> > >
> > > Expecting sub string: {}
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame variable is
> > > output: (std::__1::map<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<int>, std::__1::allocator<pair<const int, std::__1::basic_string<char> > > >) is = map has 4 items {
> > > [0] = {
> > > first = 1
> > > second = "is"
> > > }
> > > [1] = {
> > > first = 2
> > > second = "smart"
> > > }
> > > [2] = {
> > > first = 3
> > > second = "!!!"
> > > }
> > > [3] = {
> > > first = 85
> > > second = "goofy"
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 4 items
> > > Matched
> > >
> > > Expecting sub string: [0] =
> > > Matched
> > >
> > > Expecting sub string: second = "goofy"
> > > Matched
> > >
> > > Expecting sub string: first = 85
> > > Matched
> > >
> > > Expecting sub string: [1] =
> > > Matched
> > >
> > > Expecting sub string: second = "is"
> > > Matched
> > >
> > > Expecting sub string: first = 1
> > > Matched
> > >
> > > Expecting sub string: [2] =
> > > Matched
> > >
> > > Expecting sub string: second = "smart"
> > > Matched
> > >
> > > Expecting sub string: first = 2
> > > Matched
> > >
> > > Expecting sub string: [3] =
> > > Matched
> > >
> > > Expecting sub string: second = "!!!"
> > > Matched
> > >
> > > Expecting sub string: first = 3
> > > Matched
> > >
> > > runCmd: p is
> > > output: (std::__1::map<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<int>, std::__1::allocator<pair<const int, std::__1::basic_string<char> > > >) $2 = map has 4 items {
> > > (std::__1::__tree_node<std::__1::pair<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void *>::value_type) [0] = {
> > > (int) first = 1
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) second = "is"
> > > }
> > > (std::__1::__tree_node<std::__1::pair<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void *>::value_type) [1] = {
> > > (int) first = 2
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) second = "smart"
> > > }
> > > (std::__1::__tree_node<std::__1::pair<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void *>::value_type) [2] = {
> > > (int) first = 3
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) second = "!!!"
> > > }
> > > (std::__1::__tree_node<std::__1::pair<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void *>::value_type) [3] = {
> > > (int) first = 85
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) second = "goofy"
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 4 items
> > > Matched
> > >
> > > Expecting sub string: [0] =
> > > Matched
> > >
> > > Expecting sub string: second = "goofy"
> > > Matched
> > >
> > > Expecting sub string: first = 85
> > > Matched
> > >
> > > Expecting sub string: [1] =
> > > Matched
> > >
> > > Expecting sub string: second = "is"
> > > Matched
> > >
> > > Expecting sub string: first = 1
> > > Matched
> > >
> > > Expecting sub string: [2] =
> > > Matched
> > >
> > > Expecting sub string: second = "smart"
> > > Matched
> > >
> > > Expecting sub string: first = 2
> > > Matched
> > >
> > > Expecting sub string: [3] =
> > > Matched
> > >
> > > Expecting sub string: second = "!!!"
> > > Matched
> > >
> > > Expecting sub string: first = 3
> > > Matched
> > >
> > > runCmd: frame variable is[0]
> > > output: (std::__1::__tree_node<std::__1::pair<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void *>::value_type) [0] = {
> > > first = 1
> > > second = "is"
> > > }
> > >
> > >
> > > Expecting sub string: first =
> > > Matched
> > >
> > > Expecting sub string: second =
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame variable is
> > > output: (std::__1::map<int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<int>, std::__1::allocator<pair<const int, std::__1::basic_string<char> > > >) is = map has 0 items {}
> > >
> > >
> > > Expecting sub string: map has 0 items
> > > Matched
> > >
> > > Expecting sub string: {}
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame variable ss -T
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, std::__1::basic_string<char> > > >) ss = map has 0 items {}
> > >
> > >
> > > runCmd: frame variable ss
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, std::__1::basic_string<char> > > >) ss = map has 0 items {}
> > >
> > >
> > > Expecting sub string: map has 0 items
> > > Matched
> > >
> > > Expecting sub string: {}
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame select 0
> > > output: frame #0: 0x0000000100001e10 a.out`main + 3024 at string:1781
> > > 1778 {
> > > 1779 #ifdef _LIBCPP_DEBUG
> > > 1780 assert(__s != 0);
> > > -> 1781 #endif
> > > 1782 __init(__s, traits_type::length(__s));
> > > 1783 }
> > > 1784
> > >
> > >
> > > runCmd: frame variable ss
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, std::__1::basic_string<char> > > >) ss = map has 3 items {
> > > [0] = {
> > > first = "casa"
> > > second = "house"
> > > }
> > > [1] = {
> > > first = "ciao"
> > > second = "hello"
> > > }
> > > [2] = {
> > > first = "gatto"
> > > second = "cat"
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 3 items
> > > Matched
> > >
> > > Expecting sub string: [0] =
> > > Matched
> > >
> > > Expecting sub string: second = "hello"
> > > Matched
> > >
> > > Expecting sub string: first = "ciao"
> > > Matched
> > >
> > > Expecting sub string: [1] =
> > > Matched
> > >
> > > Expecting sub string: second = "house"
> > > Matched
> > >
> > > Expecting sub string: first = "casa"
> > > Matched
> > >
> > > Expecting sub string: [2] =
> > > Matched
> > >
> > > Expecting sub string: second = "cat"
> > > Matched
> > >
> > > Expecting sub string: first = "gatto"
> > > Matched
> > >
> > > runCmd: p ss
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, std::__1::basic_string<char> > > >) $3 = map has 3 items {
> > > (std::__1::__tree_node<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void *>::value_type) [0] = {
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) first = "casa"
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) second = "house"
> > > }
> > > (std::__1::__tree_node<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void *>::value_type) [1] = {
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) first = "ciao"
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) second = "hello"
> > > }
> > > (std::__1::__tree_node<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void *>::value_type) [2] = {
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) first = "gatto"
> > > (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) second = "cat"
> > > }
> > > }
> > >
> > >
> > > Expecting sub string: map has 3 items
> > > Matched
> > >
> > > Expecting sub string: [0] =
> > > Matched
> > >
> > > Expecting sub string: second = "hello"
> > > Matched
> > >
> > > Expecting sub string: first = "ciao"
> > > Matched
> > >
> > > Expecting sub string: [1] =
> > > Matched
> > >
> > > Expecting sub string: second = "house"
> > > Matched
> > >
> > > Expecting sub string: first = "casa"
> > > Matched
> > >
> > > Expecting sub string: [2] =
> > > Matched
> > >
> > > Expecting sub string: second = "cat"
> > > Matched
> > >
> > > Expecting sub string: first = "gatto"
> > > Matched
> > >
> > > runCmd: frame variable ss[2]
> > > output: (std::__1::__tree_node<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, void *>::value_type) ss[2] = {
> > > first = "gatto"
> > > second = "cat"
> > > }
> > >
> > >
> > > Expecting sub string: gatto
> > > Matched
> > >
> > > Expecting sub string: cat
> > > Matched
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: n
> > > output: Process 63894 stopped
> > >
> > >
> > > runCmd: frame select 0
> > > output: frame #0: 0x0000000100001eb7 a.out`main + 3191 at main.cpp:59
> > > a.out`main + 3191 at main.cpp:59:
> > > -> 0x100001eb7: movq -1680(%rbp), %rdi
> > > 0x100001ebe: callq 0x10000b37a ; std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > >::~map()
> > > 0x100001ec3: jmpq 413
> > > 0x100001ec8: movl %edx, %ecx
> > >
> > >
> > > runCmd: frame variable ss
> > > output: (std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<pair<const std::__1::basic_string<char>, std::__1::basic_string<char> > > >) ss = map has 0 items {}
> > >
> > >
> > > Expecting sub string: map has 0 items
> > > Matched
> > >
> > > Expecting sub string: {}
> > > Matched
> > >
> > > Executing tearDown hook: def cleanup():
> > > self.runCmd('type format clear', check=False)
> > > self.runCmd('type summary clear', check=False)
> > > self.runCmd('type filter clear', check=False)
> > > self.runCmd('type synth clear', check=False)
> > > self.runCmd("settings set target.max-children-count 256", check=False)
> > >
> > >
> > > runCmd: type format clear
> > > check of return status not required
> > > output:
> > >
> > > runCmd: type summary clear
> > > check of return status not required
> > > output:
> > >
> > > runCmd: type filter clear
> > > check of return status not required
> > > output:
> > >
> > > runCmd: type synth clear
> > > check of return status not required
> > > output:
> > >
> > > runCmd: settings set target.max-children-count 256
> > > check of return status not required
> > > output:
> > >
> > > <bound method SBProcess.Kill of <lldb.SBProcess; proxy of <Swig Object of type 'lldb::SBProcess *' at 0x105db4210> >>: success
> > >
> > > ok
> > >
> > > os command: [['/bin/sh', '-c', 'make clean']]
> > > with pid: 63898
> > > stdout: rm -rf "a.out" "a.out.dSYM" main.o main.d
> > >
> > > stderr:
> > > retcode: 0
> > >
> > >
> > > Restore dir to: /Volumes/work/egranata/lldb/test
> > >
> > > ----------------------------------------------------------------------
> > > Ran 1 test in 2.934s
> > >
> > > OK
> > > Enricos-MacBook-Pro:test egranata$
> > >
> > >
> > >
> > > I would have suggested to check out ToT, but you said you see this failure even with a clean checkout.
> > > Is anyone else on the list seeing this?
> > >
> > > - Enrico
> > >
> > > On Mar 28, 2012, at 7:25 AM, Filipe Cabecinhas wrote:
> > > > Hi all,
> > > >
> > > > I'm trying to run the test suite to check some patches that I've been working on.
> > > > Are the expected failures updated? I have the latest XCode (4.3.2), as well as the latest command line tools.
> > > >
> > > > This test always hangs, even with a clean checkout (it seemed to me that it was due to an infinite loop in the type summary):
> > > >
> > > > cd lldb/test
> > > > make -C functionalities/data-formatter/data-formatter-stl/libcxx/map
> > > > ./dotest.py -A x86_64 -C clang -v -t -f LibcxxMapDataFormatterTestCase.data_formatter_commands
> > > >
> > > > Regards,
> > > >
> > > >
> > > > Filipe
> > > >
> > > > <Failure-TestDataFormatterLibccMap.LibcxxMapDataFormatterTestCase.data_formatter_commands.log>_______________________________________________
> > > > lldb-dev mailing list
> > > > lldb-dev at cs.uiuc.edu (mailto:lldb-dev at cs.uiuc.edu) (mailto:lldb-dev at cs.uiuc.edu)
> > > > http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
> > >
> >
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: verbose-test.out
Type: application/octet-stream
Size: 18233 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20120330/0618d107/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Failure-TestDataFormatterLibccMap.LibcxxMapDataFormatterTestCase.data_formatter_commands.log
Type: application/octet-stream
Size: 6606 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20120330/0618d107/attachment-0001.obj>
More information about the lldb-dev
mailing list