Skip to content

Commit 183c91d

Browse files
committed
fix(build): fix up warnings in ghidra_disasm.cpp
1 parent b911020 commit 183c91d

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

lib/bap_ghidra/ghidra_disasm.cpp

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class Loader : public LoadImage {
6161
}
6262

6363
bool is_mapped(uint64_t addr) const {
64-
return addr >= mem.base && addr - mem.base < mem.loc.len;
64+
return addr >= mem.base && (int)(addr - mem.base) < mem.loc.len;
6565
}
6666
};
6767

@@ -81,6 +81,7 @@ enum ExtraOpCode {
8181
std::string get_extra_opname(ExtraOpCode op) {
8282
switch (op) {
8383
case CORE_SEQ: return "core:seq";
84+
default: break;
8485
}
8586
return ":unk";
8687
}
@@ -109,7 +110,7 @@ class OpcodesTable {
109110

110111
std::vector<string> userops;
111112
translator.getUserOpNames(userops);
112-
for (int op = 0; op < userops.size(); op++) {
113+
for (size_t op = 0; op < userops.size(); op++) {
113114
user_offsets[op] = ss.tellp();
114115
ss << userops[op] << '\000';
115116
}
@@ -267,7 +268,7 @@ class InstructionBuilder : public PcodeEmit {
267268
bap::insn insn;
268269
insn.code = CORE_SEQ;
269270
insn.name = opcodes.intern(insn.code);
270-
for (int i = 0; i < insns.size(); i++) {
271+
for (size_t i = 0; i < insns.size(); i++) {
271272
bap::operand op;
272273
op.type = bap_disasm_op_insn;
273274
op.sub_val = &insns[i];
@@ -356,9 +357,11 @@ bool matches(const bap::insn &insn, bap_disasm_insn_p_type p) {
356357
case is_call:
357358
sat |= p != is_barrier && (op == CPUI_CALL || op == CPUI_CALLIND);
358359
case is_indirect_branch:
359-
sat |= p != is_call && op == CPUI_BRANCHIND || op == CPUI_CALLIND;
360+
sat |= p != is_call && (op == CPUI_BRANCHIND || op == CPUI_CALLIND);
360361
case is_return:
361362
sat |= p != is_call && op == CPUI_RETURN;
363+
case is_invalid:
364+
return false;
362365
}
363366
return sat;
364367
}

0 commit comments

Comments
 (0)