00000000004050f0 <example1::main()>:
M0000000000000000: pushq %rbx ; 1 bytes
M0000000000000001: subq $192, %rsp ; 7 bytes
M0000000000000008: movl $0, 96(%rsp) ; 8 bytes
M0000000000000010: movq 3262745(%rip), %rax # 721a20 <BloombergLP::bslma::Default::s_defaultAllocator> ; 7 bytes
M0000000000000017: testq %rax, %rax ; 3 bytes
M000000000000001a: jne 0x405111 <example1::main()+0x21> ; 2 bytes
M000000000000001c: callq 0x4a64f0 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()> ; 5 bytes
M0000000000000021: movq %rax, 104(%rsp) ; 5 bytes
M0000000000000026: movl $5078605, %esi ; 5 bytes
M000000000000002b: xorl %edi, %edi ; 2 bytes
M000000000000002d: movl $2081, %edx ; 5 bytes
M0000000000000032: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M0000000000000037: leaq 32(%rsp), %rdi ; 5 bytes
M000000000000003c: callq 0x4a0260 <BloombergLP::balcl::OptionValue::type() const> ; 5 bytes
M0000000000000041: xorl %edi, %edi ; 2 bytes
M0000000000000043: testl %eax, %eax ; 2 bytes
M0000000000000045: setne %dil ; 4 bytes
M0000000000000049: movl $5078638, %esi ; 5 bytes
M000000000000004e: movl $2082, %edx ; 5 bytes
M0000000000000053: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M0000000000000058: movl $3, 176(%rsp) ; 11 bytes
M0000000000000063: movq 3262662(%rip), %rax # 721a20 <BloombergLP::bslma::Default::s_defaultAllocator> ; 7 bytes
M000000000000006a: testq %rax, %rax ; 3 bytes
M000000000000006d: je 0x405166 <example1::main()+0x76> ; 2 bytes
M000000000000006f: movl $3, %ecx ; 5 bytes
M0000000000000074: jmp 0x405172 <example1::main()+0x82> ; 2 bytes
M0000000000000076: callq 0x4a64f0 <BloombergLP::bslma::Default::determineAndReturnDefaultAllocator()> ; 5 bytes
M000000000000007b: movl 176(%rsp), %ecx ; 7 bytes
M0000000000000082: movq %rax, 184(%rsp) ; 8 bytes
M000000000000008a: movl $5, 112(%rsp) ; 8 bytes
M0000000000000092: movb $1, 116(%rsp) ; 5 bytes
M0000000000000097: xorl %edi, %edi ; 2 bytes
M0000000000000099: testl %ecx, %ecx ; 2 bytes
M000000000000009b: sete %dil ; 4 bytes
M000000000000009f: movl $5078681, %esi ; 5 bytes
M00000000000000a4: movl $2090, %edx ; 5 bytes
M00000000000000a9: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M00000000000000ae: leaq 112(%rsp), %rbx ; 5 bytes
M00000000000000b3: movq %rbx, %rdi ; 3 bytes
M00000000000000b6: callq 0x4a0260 <BloombergLP::balcl::OptionValue::type() const> ; 5 bytes
M00000000000000bb: xorl %edi, %edi ; 2 bytes
M00000000000000bd: cmpl $3, %eax ; 3 bytes
M00000000000000c0: setne %dil ; 4 bytes
M00000000000000c4: movl $5078713, %esi ; 5 bytes
M00000000000000c9: movl $2091, %edx ; 5 bytes
M00000000000000ce: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M00000000000000d3: xorl %edi, %edi ; 2 bytes
M00000000000000d5: cmpl $5, 112(%rsp) ; 5 bytes
M00000000000000da: setne %dil ; 4 bytes
M00000000000000de: movl $5078755, %esi ; 5 bytes
M00000000000000e3: movl $2092, %edx ; 5 bytes
M00000000000000e8: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M00000000000000ed: movl 96(%rsp), %edx ; 4 bytes
M00000000000000f1: movb $1, %al ; 2 bytes
M00000000000000f3: cmpl 176(%rsp), %edx ; 7 bytes
M00000000000000fa: jne 0x405215 <example1::main()+0x125> ; 2 bytes
M00000000000000fc: testl %edx, %edx ; 2 bytes
M00000000000000fe: je 0x405213 <example1::main()+0x123> ; 2 bytes
M0000000000000100: movb $1, 16(%rsp) ; 5 bytes
M0000000000000105: movq %rbx, 24(%rsp) ; 5 bytes
M000000000000010a: leaq 32(%rsp), %rdi ; 5 bytes
M000000000000010f: leaq 16(%rsp), %rsi ; 5 bytes
M0000000000000114: callq 0x4976d0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_EqualityTestVisitor&>(BloombergLP::bdlb::Variant_EqualityTestVisitor&, int) const> ; 5 bytes
M0000000000000119: cmpb $0, 16(%rsp) ; 5 bytes
M000000000000011e: sete %al ; 3 bytes
M0000000000000121: jmp 0x405215 <example1::main()+0x125> ; 2 bytes
M0000000000000123: xorl %eax, %eax ; 2 bytes
M0000000000000125: xorb $1, %al ; 2 bytes
M0000000000000127: movzbl %al, %edi ; 3 bytes
M000000000000012a: movl $5078778, %esi ; 5 bytes
M000000000000012f: movl $2094, %edx ; 5 bytes
M0000000000000134: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M0000000000000139: movl 176(%rsp), %edx ; 7 bytes
M0000000000000140: testl %edx, %edx ; 2 bytes
M0000000000000142: je 0x40524e <example1::main()+0x15e> ; 2 bytes
M0000000000000144: leaq 112(%rsp), %rdi ; 5 bytes
M0000000000000149: leaq 16(%rsp), %rsi ; 5 bytes
M000000000000014e: callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)> ; 5 bytes
M0000000000000153: movl $0, 176(%rsp) ; 11 bytes
M000000000000015e: xorl %edi, %edi ; 2 bytes
M0000000000000160: cmpl $0, 96(%rsp) ; 5 bytes
M0000000000000165: setne %dil ; 4 bytes
M0000000000000169: movl $5078795, %esi ; 5 bytes
M000000000000016e: movl $2101, %edx ; 5 bytes
M0000000000000173: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M0000000000000178: movl 96(%rsp), %edx ; 4 bytes
M000000000000017c: testl %edx, %edx ; 2 bytes
M000000000000017e: je 0x405287 <example1::main()+0x197> ; 2 bytes
M0000000000000180: leaq 32(%rsp), %rdi ; 5 bytes
M0000000000000185: leaq 16(%rsp), %rsi ; 5 bytes
M000000000000018a: callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)> ; 5 bytes
M000000000000018f: movl $0, 96(%rsp) ; 8 bytes
M0000000000000197: leaq 32(%rsp), %rdi ; 5 bytes
M000000000000019c: movl $5, %esi ; 5 bytes
M00000000000001a1: callq 0x49fd60 <BloombergLP::balcl::OptionValue::init(BloombergLP::balcl::OptionType::Enum)> ; 5 bytes
M00000000000001a6: xorl %edi, %edi ; 2 bytes
M00000000000001a8: cmpl $0, 96(%rsp) ; 5 bytes
M00000000000001ad: sete %dil ; 4 bytes
M00000000000001b1: movl $5078812, %esi ; 5 bytes
M00000000000001b6: movl $2106, %edx ; 5 bytes
M00000000000001bb: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M00000000000001c0: leaq 32(%rsp), %rdi ; 5 bytes
M00000000000001c5: callq 0x4a0260 <BloombergLP::balcl::OptionValue::type() const> ; 5 bytes
M00000000000001ca: xorl %edi, %edi ; 2 bytes
M00000000000001cc: cmpl $5, %eax ; 3 bytes
M00000000000001cf: setne %dil ; 4 bytes
M00000000000001d3: movl $5078844, %esi ; 5 bytes
M00000000000001d8: movl $2107, %edx ; 5 bytes
M00000000000001dd: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M00000000000001e2: xorpd %xmm0, %xmm0 ; 4 bytes
M00000000000001e6: cmpneqsd 32(%rsp), %xmm0 ; 7 bytes
M00000000000001ed: movq %xmm0, %rdi ; 5 bytes
M00000000000001f2: andl $1, %edi ; 3 bytes
M00000000000001f5: movl $5078889, %esi ; 5 bytes
M00000000000001fa: movl $2108, %edx ; 5 bytes
M00000000000001ff: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M0000000000000204: movabsq $4618441417868443648, %rax ; 10 bytes
M000000000000020e: movq %rax, 32(%rsp) ; 5 bytes
M0000000000000213: movb $1, 40(%rsp) ; 5 bytes
M0000000000000218: movl $5078922, %esi ; 5 bytes
M000000000000021d: xorl %edi, %edi ; 2 bytes
M000000000000021f: movl $2111, %edx ; 5 bytes
M0000000000000224: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M0000000000000229: leaq 8(%rsp), %rax ; 5 bytes
M000000000000022e: movq %rax, 16(%rsp) ; 5 bytes
M0000000000000233: movl 96(%rsp), %edx ; 4 bytes
M0000000000000237: leaq 32(%rsp), %rdi ; 5 bytes
M000000000000023c: leaq 16(%rsp), %rsi ; 5 bytes
M0000000000000241: callq 0x497d80 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_RawVisitorHelper<void, BloombergLP::balcl::OptionValue_SetNullVisitor> const&>(BloombergLP::bdlb::Variant_RawVisitorHelper<void, BloombergLP::balcl::OptionValue_SetNullVisitor> const&, int)> ; 5 bytes
M0000000000000246: movl 96(%rsp), %ecx ; 4 bytes
M000000000000024a: decl %ecx ; 2 bytes
M000000000000024c: cmpl $19, %ecx ; 3 bytes
M000000000000024f: ja 0x4053db <example1::main()+0x2eb> ; 6 bytes
M0000000000000255: leaq 40(%rsp), %rax ; 5 bytes
M000000000000025a: jmpq *5048336(,%rcx,8) ; 7 bytes
M0000000000000261: leaq 64(%rsp), %rax ; 5 bytes
M0000000000000266: jmp 0x40536b <example1::main()+0x27b> ; 2 bytes
M0000000000000268: leaq 33(%rsp), %rax ; 5 bytes
M000000000000026d: jmp 0x40536b <example1::main()+0x27b> ; 2 bytes
M000000000000026f: leaq 36(%rsp), %rax ; 5 bytes
M0000000000000274: jmp 0x40536b <example1::main()+0x27b> ; 2 bytes
M0000000000000276: leaq 80(%rsp), %rax ; 5 bytes
M000000000000027b: movzbl (%rax), %edi ; 3 bytes
M000000000000027e: movl $5078950, %esi ; 5 bytes
M0000000000000283: movl $2117, %edx ; 5 bytes
M0000000000000288: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M000000000000028d: leaq 32(%rsp), %rdi ; 5 bytes
M0000000000000292: callq 0x4a0260 <BloombergLP::balcl::OptionValue::type() const> ; 5 bytes
M0000000000000297: xorl %edi, %edi ; 2 bytes
M0000000000000299: cmpl $5, %eax ; 3 bytes
M000000000000029c: setne %dil ; 4 bytes
M00000000000002a0: movl $5078844, %esi ; 5 bytes
M00000000000002a5: movl $2118, %edx ; 5 bytes
M00000000000002aa: callq 0x405440 <(anonymous namespace)::aSsErT(bool, char const*, int)> ; 5 bytes
M00000000000002af: movl 176(%rsp), %edx ; 7 bytes
M00000000000002b6: testl %edx, %edx ; 2 bytes
M00000000000002b8: je 0x4053b9 <example1::main()+0x2c9> ; 2 bytes
M00000000000002ba: leaq 112(%rsp), %rdi ; 5 bytes
M00000000000002bf: leaq 16(%rsp), %rsi ; 5 bytes
M00000000000002c4: callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)> ; 5 bytes
M00000000000002c9: movl 96(%rsp), %edx ; 4 bytes
M00000000000002cd: testl %edx, %edx ; 2 bytes
M00000000000002cf: je 0x4053d0 <example1::main()+0x2e0> ; 2 bytes
M00000000000002d1: leaq 32(%rsp), %rdi ; 5 bytes
M00000000000002d6: leaq 112(%rsp), %rsi ; 5 bytes
M00000000000002db: callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)> ; 5 bytes
M00000000000002e0: xorl %eax, %eax ; 2 bytes
M00000000000002e2: addq $192, %rsp ; 7 bytes
M00000000000002e9: popq %rbx ; 1 bytes
M00000000000002ea: retq ; 1 bytes
M00000000000002eb: ud2 ; 2 bytes
M00000000000002ed: jmp 0x4053ef <example1::main()+0x2ff> ; 2 bytes
M00000000000002ef: movq %rax, %rdi ; 3 bytes
M00000000000002f2: callq 0x4976c0 <__clang_call_terminate> ; 5 bytes
M00000000000002f7: movq %rax, %rdi ; 3 bytes
M00000000000002fa: callq 0x4976c0 <__clang_call_terminate> ; 5 bytes
M00000000000002ff: movq %rax, %rbx ; 3 bytes
M0000000000000302: jmp 0x40540f <example1::main()+0x31f> ; 2 bytes
M0000000000000304: movq %rax, %rbx ; 3 bytes
M0000000000000307: movl 176(%rsp), %edx ; 7 bytes
M000000000000030e: testl %edx, %edx ; 2 bytes
M0000000000000310: je 0x40540f <example1::main()+0x31f> ; 2 bytes
M0000000000000312: leaq 112(%rsp), %rdi ; 5 bytes
M0000000000000317: movq %rsp, %rsi ; 3 bytes
M000000000000031a: callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)> ; 5 bytes
M000000000000031f: movl 96(%rsp), %edx ; 4 bytes
M0000000000000323: testl %edx, %edx ; 2 bytes
M0000000000000325: je 0x405426 <example1::main()+0x336> ; 2 bytes
M0000000000000327: leaq 32(%rsp), %rdi ; 5 bytes
M000000000000032c: leaq 112(%rsp), %rsi ; 5 bytes
M0000000000000331: callq 0x4974a0 <void BloombergLP::bdlb::VariantImp<BloombergLP::bslmf::TypeList<BloombergLP::bdlb::NullableValue<bool>, BloombergLP::bdlb::NullableValue<char>, BloombergLP::bdlb::NullableValue<int>, BloombergLP::bdlb::NullableValue<long long>, BloombergLP::bdlb::NullableValue<double>, BloombergLP::bdlb::NullableValue<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Datetime>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Date>, BloombergLP::bdlb::NullableValue<BloombergLP::bdlt::Time>, BloombergLP::bdlb::NullableValue<bsl::vector<char, bsl::allocator<char> > >, BloombergLP::bdlb::NullableValue<bsl::vector<int, bsl::allocator<int> > >, BloombergLP::bdlb::NullableValue<bsl::vector<long long, bsl::allocator<long long> > >, BloombergLP::bdlb::NullableValue<bsl::vector<double, bsl::allocator<double> > >, BloombergLP::bdlb::NullableValue<bsl::vector<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> >, bsl::allocator<bsl::basic_string<char, std::__1::char_traits<char>, bsl::allocator<char> > > > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Datetime, bsl::allocator<BloombergLP::bdlt::Datetime> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Date, bsl::allocator<BloombergLP::bdlt::Date> > >, BloombergLP::bdlb::NullableValue<bsl::vector<BloombergLP::bdlt::Time, bsl::allocator<BloombergLP::bdlt::Time> > > > >::doApply<BloombergLP::bdlb::Variant_DestructorVisitor&>(BloombergLP::bdlb::Variant_DestructorVisitor&, int)> ; 5 bytes
M0000000000000336: movq %rbx, %rdi ; 3 bytes
M0000000000000339: callq 0x403fc0 <_Unwind_Resume@plt> ; 5 bytes
M000000000000033e: movq %rax, %rdi ; 3 bytes
M0000000000000341: callq 0x4976c0 <__clang_call_terminate> ; 5 bytes
M0000000000000346: movq %rax, %rdi ; 3 bytes
M0000000000000349: callq 0x4976c0 <__clang_call_terminate> ; 5 bytes
M000000000000034e: nop ; 2 bytes