// File: acliusBackHome[P]kamaya/dist/ParseDeclaration.cpp
// Function: ParseVariable::operator<(ParseVariable const&) const
bool ParseVariable::operator<(const ParseVariable &other) const {
    if (type < other.type) {
        return true;
    } else if (other.type < type) {
        return false;
    }
    if (scope_id < other.scope_id) {
        return true;
    } else if (other.scope_id < scope_id) {
        return false;
    }
    if (address < other.address) {
        return true;
    } else if (other.address < address) {
        return false;
    }
    if (symbol.length() < other.symbol.length()) {
        return true;
    } else if (other.symbol.length() < symbol.length()) {
        return false;
    }
    for (size_t i = 0; i < symbol.length(); ++i) {
        if (symbol[i] < other.symbol[i]) {
            return true;
        } else if (other.symbol[i] < symbol[i]) {
            return false;
        }
    }
    return false;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq -0x10(%rbp), %rdi
movq %rdi, -0x28(%rbp)
movq -0x18(%rbp), %rsi
callq 0x57d70
testb $0x1, %al
jne 0x687f7
jmp 0x68800
movb $0x1, -0x1(%rbp)
jmp 0x689b2
movq -0x28(%rbp), %rsi
movq -0x18(%rbp), %rdi
callq 0x57d70
testb $0x1, %al
jne 0x68813
jmp 0x6881c
movb $0x0, -0x1(%rbp)
jmp 0x689b2
jmp 0x6881e
movq -0x28(%rbp), %rax
movq 0x60(%rax), %rax
movq -0x18(%rbp), %rcx
cmpq 0x60(%rcx), %rax
jae 0x68839
movb $0x1, -0x1(%rbp)
jmp 0x689b2
movq -0x28(%rbp), %rcx
movq -0x18(%rbp), %rax
movq 0x60(%rax), %rax
cmpq 0x60(%rcx), %rax
jae 0x68854
movb $0x0, -0x1(%rbp)
jmp 0x689b2
jmp 0x68856
movq -0x28(%rbp), %rax
movq 0x58(%rax), %rax
movq -0x18(%rbp), %rcx
cmpq 0x58(%rcx), %rax
jae 0x68871
movb $0x1, -0x1(%rbp)
jmp 0x689b2
movq -0x28(%rbp), %rcx
movq -0x18(%rbp), %rax
movq 0x58(%rax), %rax
cmpq 0x58(%rcx), %rax
jae 0x6888c
movb $0x0, -0x1(%rbp)
jmp 0x689b2
jmp 0x6888e
movq -0x28(%rbp), %rdi
addq $0x38, %rdi
callq 0x44e0
movq %rax, -0x30(%rbp)
movq -0x18(%rbp), %rdi
addq $0x38, %rdi
callq 0x44e0
movq %rax, %rcx
movq -0x30(%rbp), %rax
cmpq %rcx, %rax
jae 0x688c1
movb $0x1, -0x1(%rbp)
jmp 0x689b2
movq -0x18(%rbp), %rdi
addq $0x38, %rdi
callq 0x44e0
movq -0x28(%rbp), %rdi
movq %rax, -0x38(%rbp)
addq $0x38, %rdi
callq 0x44e0
movq %rax, %rcx
movq -0x38(%rbp), %rax
cmpq %rcx, %rax
jae 0x688f4
movb $0x0, -0x1(%rbp)
jmp 0x689b2
jmp 0x688f6
movq $0x0, -0x20(%rbp)
movq -0x28(%rbp), %rdi
movq -0x20(%rbp), %rax
movq %rax, -0x40(%rbp)
addq $0x38, %rdi
callq 0x44e0
movq %rax, %rcx
movq -0x40(%rbp), %rax
cmpq %rcx, %rax
jae 0x689ae
movq -0x28(%rbp), %rdi
addq $0x38, %rdi
movq -0x20(%rbp), %rsi
callq 0x4390
movsbl (%rax), %eax
movl %eax, -0x44(%rbp)
movq -0x18(%rbp), %rdi
addq $0x38, %rdi
movq -0x20(%rbp), %rsi
callq 0x4390
movq %rax, %rcx
movl -0x44(%rbp), %eax
movsbl (%rcx), %ecx
cmpl %ecx, %eax
jge 0x6895e
movb $0x1, -0x1(%rbp)
jmp 0x689b2
movq -0x18(%rbp), %rdi
addq $0x38, %rdi
movq -0x20(%rbp), %rsi
callq 0x4390
movq -0x28(%rbp), %rdi
movsbl (%rax), %eax
movl %eax, -0x48(%rbp)
addq $0x38, %rdi
movq -0x20(%rbp), %rsi
callq 0x4390
movq %rax, %rcx
movl -0x48(%rbp), %eax
movsbl (%rcx), %ecx
cmpl %ecx, %eax
jge 0x68999
movb $0x0, -0x1(%rbp)
jmp 0x689b2
jmp 0x6899b
jmp 0x6899d
movq -0x20(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x20(%rbp)
jmp 0x688fe
movb $0x0, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x50, %rsp
popq %rbp
retq
nopl (%rax)