// File: /workspace/github_cpp_makefile_star2_O3/stevedonovan[P]outstreams/reader-lineinfo.cpp
// Function: main
int main()
{
    outs.sep(' ');
    Reader rdr("instream.cpp");
    string tok;
    while (rdr(tok)) {
        if (tok == "Reader::getlineinfo") {
            // Reader::LineInfo Reader::getlineinfo (long p) {
            string type, mname;
            rdr (type)(mname);
            outs("type")(type,"q")(",")("name")(mname,"q")();
            break;
        }
    }
    auto pos = rdr.getlineinfo();
    outs("line")(pos.line)("column")(pos.column)();

    return 0;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0xa8, %rsp
leaq 0x5b7f(%rip), %rdi      # 0x8210
movl $0x20, %esi
callq 0x440a
leaq 0x2990(%rip), %rsi      # 0x5032
leaq 0x2a57(%rip), %rdx      # 0x5100
leaq 0x68(%rsp), %rbx
movq %rbx, %rdi
callq 0x294e
leaq 0x58(%rsp), %r12
movq %r12, -0x10(%r12)
movq $0x0, -0x8(%r12)
movb $0x0, (%r12)
leaq 0x48(%rsp), %r14
leaq 0x2965(%rip), %r15      # 0x503f
movq %rbx, %rdi
movq %r14, %rsi
xorl %edx, %edx
callq 0x31a0
movq %rax, %rdi
callq 0x2b3e
testb %al, %al
je 0x280a
movq %r14, %rdi
movq %r15, %rsi
callq 0x2060
testl %eax, %eax
jne 0x26da
leaq 0x38(%rsp), %r14
movq %r14, -0x10(%r14)
xorl %eax, %eax
movq %rax, -0x8(%r14)
movb %al, (%r14)
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq %rax, -0x8(%r15)
movb %al, (%r15)
leaq 0x68(%rsp), %rdi
leaq 0x28(%rsp), %rsi
xorl %edx, %edx
callq 0x31a0
leaq 0x8(%rsp), %rsi
movq %rax, %rdi
xorl %edx, %edx
callq 0x31a0
leaq 0x5ac1(%rip), %rdi      # 0x8210
leaq 0x2917(%rip), %rsi      # 0x506d
leaq 0x28f6(%rip), %rcx      # 0x5053
xorl %edx, %edx
xorl %eax, %eax
callq 0x41c2
movq 0x28(%rsp), %rcx
leaq 0x28fb(%rip), %rsi      # 0x506d
leaq 0x28df(%rip), %rdx      # 0x5058
movq %rax, %rdi
xorl %eax, %eax
callq 0x41c2
leaq 0x28e3(%rip), %rsi      # 0x506d
leaq 0x28c9(%rip), %rcx      # 0x505a
movq %rax, %rdi
xorl %edx, %edx
xorl %eax, %eax
callq 0x41c2
leaq 0x28c9(%rip), %rsi      # 0x506d
leaq 0x28b1(%rip), %rcx      # 0x505c
movq %rax, %rdi
xorl %edx, %edx
xorl %eax, %eax
callq 0x41c2
movq 0x8(%rsp), %rcx
leaq 0x28aa(%rip), %rsi      # 0x506d
leaq 0x288e(%rip), %rdx      # 0x5058
movq %rax, %rdi
xorl %eax, %eax
callq 0x41c2
movq %rax, %rdi
callq 0x444c
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x27f3
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2130
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x280a
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x2130
leaq 0x68(%rsp), %rdi
movq $-0x1, %rsi
callq 0x3a66
movq %rax, %rbx
leaq 0x59eb(%rip), %rdi      # 0x8210
leaq 0x2841(%rip), %rsi      # 0x506d
leaq 0x282e(%rip), %rcx      # 0x5061
xorl %edx, %edx
xorl %eax, %eax
callq 0x41c2
leaq 0x282d(%rip), %rsi      # 0x5070
movq %rax, %rdi
xorl %edx, %edx
movl %ebx, %ecx
xorl %eax, %eax
callq 0x41c2
leaq 0x2815(%rip), %rsi      # 0x506d
leaq 0x2807(%rip), %rcx      # 0x5066
movq %rax, %rdi
xorl %edx, %edx
xorl %eax, %eax
callq 0x41c2
shrq $0x20, %rbx
leaq 0x27fa(%rip), %rsi      # 0x5070
movq %rax, %rdi
xorl %edx, %edx
movl %ebx, %ecx
xorl %eax, %eax
callq 0x41c2
movq %rax, %rdi
callq 0x444c
movq 0x48(%rsp), %rdi
cmpq %r12, %rdi
je 0x28a3
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x2130
leaq 0x68(%rsp), %rdi
callq 0x2acc
xorl %eax, %eax
addq $0xa8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x28d8
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x2130
movq 0x28(%rsp), %rdi
cmpq %r14, %rdi
je 0x28f6
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x2130
jmp 0x28f6
jmp 0x28f3
movq %rax, %rbx
movq 0x48(%rsp), %rdi
cmpq %r12, %rdi
je 0x290d
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x2130
leaq 0x68(%rsp), %rdi
callq 0x2acc
movq %rbx, %rdi
callq 0x2210
nop