tihmstar / libpatchfinder

A arm offsetfinder. It finds offsets, patches, parses Mach-O and even supports IMG4/IMG3
GNU Lesser General Public License v2.1
144 stars 70 forks source link

Still having similar errors after update #14

Closed djeverhart closed 4 years ago

djeverhart commented 4 years ago

After the update that was pushed most recently, I get these errors after running make

(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/bash /home/neuroses/test2/liboffsetfinder64/missing autoheader) rm -f stamp-h1 touch config.h.in cd . && /bin/bash ./config.status config.h config.status: creating config.h config.status: config.h is unchanged make all-recursive make[1]: Entering directory '/home/neuroses/test2/liboffsetfinder64' Making all in liboffsetfinder64 make[2]: Entering directory '/home/neuroses/test2/liboffsetfinder64/liboffsetfinder64' /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -I../include -I../include/liboffsetfinder64 -I/usr/local/include -I/usr/local/include -g -O2 -std=c++11 -O3 -D EXPECTIONNAME=OFexception -MT liboffsetfinder64_la-insn.lo -MD -MP -MF .deps/liboffsetfinder64_la-insn.Tpo -c -o liboffsetfinder64_la-insn.lo test -f 'insn.cpp' || echo './'insn.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../include -I../include/liboffsetfinder64 -I/usr/local/include -I/usr/local/include -g -O2 -std=c++11 -O3 -D EXPECTIONNAME=OFexception -MT liboffsetfinder64_la-insn.lo -MD -MP -MF .deps/liboffsetfinder64_la-insn.Tpo -c insn.cpp -fPIC -DPIC -o .libs/liboffsetfinder64_la-insn.o insn.cpp:30:2: warning: #warning TODO is this distance validation correct?? [-Wcpp] 30 | #warning TODO is this distance validation correct?? | ^~~ insn.cpp:170:2: warning: #warning TODO incomplete function implementation! [-Wcpp] 170 | #warning TODO incomplete function implementation! | ^~~ insn.cpp:213:2: warning: #warning TODO recheck this mask [-Wcpp] 213 | #warning TODO recheck this mask | ^~~ insn.cpp:249:2: warning: #warning TODO redo this! currently only recognises STR (immediate) [-Wcpp] 249 | #warning TODO redo this! currently only recognises STR (immediate) | ^~~ insn.cpp:254:2: warning: #warning TODO redo this! currently only recognises STR (immediate) [-Wcpp] 254 | #warning TODO redo this! currently only recognises STR (immediate) | ^~~ insn.cpp:423:2: warning: #warning TODO rewrite this! currently only unsigned offset supported [-Wcpp] 423 | #warning TODO rewrite this! currently only unsigned offset supported | ^~~ insn.cpp:144:67: warning: always_inline function might not be inlinable [-Wattributes] 144 | attribute((always_inline)) static std::pair<int64_t, int64_t> DecodeBitMasks(uint64_t immN, uint8_t imms, uint8_t immr, bool immediate){ | ^~~~~~ insn.cpp:102:48: warning: always_inline function might not be inlinable [-Wattributes] 102 | attribute((always_inline)) static uint64_t ROR(uint64_t x, int shift, int len){ | ^~~ insn.cpp:93:48: warning: always_inline function might not be inlinable [-Wattributes] 93 | attribute((always_inline)) static uint64_t ones(uint64_t n){ | ^~~~ insn.cpp:84:48: warning: always_inline function might not be inlinable [-Wattributes] 84 | attribute((always_inline)) static uint64_t replicate(uint64_t val, int bits){ | ^~~~~ insn.cpp:76:43: warning: always_inline function might not be inlinable [-Wattributes] 76 | attribute((always_inline)) static int lowestSetBit(uint64_t x){ | ^~~~ insn.cpp:68:43: warning: always_inline function might not be inlinable [-Wattributes] 68 | attribute((always_inline)) static int highestSetBit(uint64_t x){ | ^~~~~ insn.cpp:61:47: warning: always_inline function might not be inlinable [-Wattributes] 61 | attribute((always_inline)) static int64_t signExtend64(uint64_t v, int vSize){ | ^~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../include -I../include/liboffsetfinder64 -I/usr/local/include -I/usr/local/include -g -O2 -std=c++11 -O3 -D EXPECTIONNAME=OFexception -MT liboffsetfinder64_la-insn.lo -MD -MP -MF .deps/liboffsetfinder64_la-insn.Tpo -c insn.cpp -o liboffsetfinder64_la-insn.o >/dev/null 2>&1 mv -f .deps/liboffsetfinder64_la-insn.Tpo .deps/liboffsetfinder64_la-insn.Plo /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -I../include -I../include/liboffsetfinder64 -I/usr/local/include -I/usr/local/include -g -O2 -std=c++11 -O3 -D EXPECTIONNAME=OFexception -MT liboffsetfinder64_la-vsegment.lo -MD -MP -MF .deps/liboffsetfinder64_la-vsegment.Tpo -c -o liboffsetfinder64_la-vsegment.lo test -f 'vsegment.cpp' || echo './'vsegment.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../include -I../include/liboffsetfinder64 -I/usr/local/include -I/usr/local/include -g -O2 -std=c++11 -O3 -D EXPECTIONNAME=OFexception -MT liboffsetfinder64_la-vsegment.lo -MD -MP -MF .deps/liboffsetfinder64_la-vsegment.Tpo -c vsegment.cpp -fPIC -DPIC -o .libs/liboffsetfinder64_la-vsegment.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../include -I../include/liboffsetfinder64 -I/usr/local/include -I/usr/local/include -g -O2 -std=c++11 -O3 -D EXPECTIONNAME=OFexception -MT liboffsetfinder64_la-vsegment.lo -MD -MP -MF .deps/liboffsetfinder64_la-vsegment.Tpo -c vsegment.cpp -o liboffsetfinder64_la-vsegment.o >/dev/null 2>&1 mv -f .deps/liboffsetfinder64_la-vsegment.Tpo .deps/liboffsetfinder64_la-vsegment.Plo /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -I../include -I../include/liboffsetfinder64 -I/usr/local/include -I/usr/local/include -g -O2 -std=c++11 -O3 -D EXPECTIONNAME=OFexception -MT liboffsetfinder64_la-vmem.lo -MD -MP -MF .deps/liboffsetfinder64_la-vmem.Tpo -c -o liboffsetfinder64_la-vmem.lo test -f 'vmem.cpp' || echo './'vmem.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../include -I../include/liboffsetfinder64 -I/usr/local/include -I/usr/local/include -g -O2 -std=c++11 -O3 -D EXPECTIONNAME=OFexception -MT liboffsetfinder64_la-vmem.lo -MD -MP -MF .deps/liboffsetfinder64_la-vmem.Tpo -c vmem.cpp -fPIC -DPIC -o .libs/liboffsetfinder64_la-vmem.o vmem.cpp: In constructor ‘tihmstar::offsetfinder64::vmem::vmem(std::vector, int)’: vmem.cpp:21:30: error: ‘remove_if’ is not a member of ‘std’; did you mean ‘remove_cv’? 21 | _segments.erase(std::remove_if(_segments.begin(), _segments.end(), [&](const vsegment& obj){ | ^~~~~ | remove_cv vmem.cpp:25:10: error: ‘sort’ is not a member of ‘std’ 25 | std::sort(_segments.begin(),_segments.end(),[ ]( const vsegment& lhs, const vsegment& rhs){ | ^~~~ vmem.cpp: In copy constructor ‘tihmstar::offsetfinder64::vmem::vmem(const tihmstar::offsetfinder64::vmem&, tihmstar::offsetfinder64::loc_t, int)’: vmem.cpp:37:30: error: ‘remove_if’ is not a member of ‘std’; did you mean ‘remove_cv’? 37 | _segments.erase(std::remove_if(_segments.begin(), _segments.end(), [&](const vsegment& obj){ | ^~~~~ | remove_cv vmem.cpp:41:10: error: ‘sort’ is not a member of ‘std’ 41 | std::sort(_segments.begin(),_segments.end(),[ ]( const vsegment& lhs, const vsegment& rhs){ | ^~~~ vmem.cpp: In member function ‘tihmstar::offsetfinder64::loc_t tihmstar::offsetfinder64::vmem::memmem(const void, size_t)’: vmem.cpp:73:12: warning: converting to non-pointer type ‘tihmstar::offsetfinder64::loc_t’ {aka ‘long unsigned int’} from NULL [-Wconversion-null] 73 | return NULL; | ^~~~ vmem.cpp: In member function ‘tihmstar::offsetfinder64::loc_t tihmstar::offsetfinder64::vmem::memstr(const char)’: vmem.cpp:82:12: warning: converting to non-pointer type ‘tihmstar::offsetfinder64::loc_t’ {aka ‘long unsigned int’} from NULL [-Wconversion-null] 82 | return NULL; | ^~~~ make[2]: [Makefile:502: liboffsetfinder64_la-vmem.lo] Error 1 make[2]: Leaving directory '/home/neuroses/test2/liboffsetfinder64/liboffsetfinder64' make[1]: [Makefile:472: all-recursive] Error 1 make[1]: Leaving directory '/home/neuroses/test2/liboffsetfinder64' make: *** [Makefile:381: all] Error 2