Branch: refs/heads/fix_virtual_call_in_constructor
Home: https://github.com/dyninst/dyninst
Commit: 8baccc50189590ef61e683bf5069cdbd94446721
https://github.com/dyninst/dyninst/commit/8baccc50189590ef61e683bf5069cdbd94446721
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M common/src/addrtranslate-win.C
Log Message:
-----------
AddressTranslateWin
Found using cppcheck:
common/src/addrtranslate-win.C:49:17: style: Virtual function 'init' is called from constructor 'AddressTranslateWin(PID pid,PROC_HANDLE phandle)' at line 168. Dynamic binding is not used. [virtualCallInConstructor]
virtual bool init();
Commit: ac02ca8f660c09e0e832337a1843b8c5bc4a8904
https://github.com/dyninst/dyninst/commit/ac02ca8f660c09e0e832337a1843b8c5bc4a8904
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M common/src/NodeIterator.h
Log Message:
-----------
NodeIteratorPredicateObj
Found using cppcheck:
common/src/NodeIterator.h:293:18: style: Virtual function 'inc' is
called from constructor
'NodeIteratorPredicateObj(Graph::NodePredicate::Ptr
p,NodeIterator&b,NodeIterator&e)' at line 331. Dynamic binding is not
used. [virtualCallInConstructor]
Commit: 16a79f54371bf0cbf53769690ace41b26fb51778
https://github.com/dyninst/dyninst/commit/16a79f54371bf0cbf53769690ace41b26fb51778
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M common/src/NodeIterator.h
Log Message:
-----------
NodeIteratorPredicateFunc
Found using cppcheck:
common/src/NodeIterator.h:352:18: style: Virtual function 'inc' is
called from constructor
'NodeIteratorPredicateFunc(Graph::NodePredicateFunc
p,void*u,NodeIterator&b,NodeIterator&e)' at line 394. Dynamic binding is
not used. [virtualCallInConstructor]
Commit: 3be0c6ba4dc7fe6851bfca053cfcab2b43cfb83b
https://github.com/dyninst/dyninst/commit/3be0c6ba4dc7fe6851bfca053cfcab2b43cfb83b
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M instructionAPI/src/InstructionDecoder-x86.C
Log Message:
-----------
InstructionDecoder_x86
Found using cppcheck:
instructionAPI/src/InstructionDecoder-x86.h:74:49: style: Virtual function 'setMode' is called from constructor 'InstructionDecoder_x86(Architecture a)' at line 144. Dynamic binding is not used. [virtualCallInConstructor]
INSTRUCTION_EXPORT virtual void setMode(bool is64);
^
instructionAPI/src/InstructionDecoder-x86.C:144:28: note: Calling setMode
if(a == Arch_x86_64) setMode(true);
^
instructionAPI/src/InstructionDecoder-x86.h:74:49: note: setMode is a virtual function
INSTRUCTION_EXPORT virtual void setMode(bool is64);
Commit: 4fe14d5321eeccad18f39b5d8d192a99ec53e248
https://github.com/dyninst/dyninst/commit/4fe14d5321eeccad18f39b5d8d192a99ec53e248
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M parseAPI/src/CFGFactory.C
Log Message:
-----------
CFGFactor::destroy_block
Found using cppcheck:
parseAPI/h/CFGFactory.h:117:18: style: Virtual function 'free_block' is called from destructor '~CFGFactory()' at line 92. Dynamic binding is not used. [virtualCallInConstructor]
virtual void free_block(Block * b);
^
parseAPI/src/CFGFactory.C:92:5: note: Calling destroy_block
destroy_block(b);
^
parseAPI/src/CFGFactory.C:182:5: note: Calling free_block
free_block(b);
^
parseAPI/h/CFGFactory.h:117:18: note: free_block is a virtual function
virtual void free_block(Block * b);
Commit: b32c57a95b2fde9c01cf123714bf97af2772c826
https://github.com/dyninst/dyninst/commit/b32c57a95b2fde9c01cf123714bf97af2772c826
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M parseAPI/src/CFGFactory.C
Log Message:
-----------
CFGFactor::free_func
Found using cppcheck:
parseAPI/h/CFGFactory.h:116:18: style: Virtual function 'free_func' is called from destructor '~CFGFactory()' at line 95. Dynamic binding is not used. [virtualCallInConstructor]
virtual void free_func(Function * f);
^
parseAPI/src/CFGFactory.C:95:5: note: Calling destroy_func
destroy_func(f);
^
parseAPI/src/CFGFactory.C:172:4: note: Calling free_func
free_func(f);
^
parseAPI/h/CFGFactory.h:116:18: note: free_func is a virtual function
virtual void free_func(Function * f);
Commit: 3a84d17abd790688b43779aab97a1e4610e1eab8
https://github.com/dyninst/dyninst/commit/3a84d17abd790688b43779aab97a1e4610e1eab8
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M parseAPI/src/CFGFactory.C
Log Message:
-----------
CFGFactor::free_edge
Commit: 767dcfb6902dc5a616e62dfc777a0b4281b197d5
https://github.com/dyninst/dyninst/commit/767dcfb6902dc5a616e62dfc777a0b4281b197d5
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2023-05-09 (Tue, 09 May 2023)
Changed paths:
M proccontrol/src/freebsd.C
Log Message:
-----------
~freebsd_process
Found using cppcheck:
proccontrol/src/freebsd.C:1046:17: warning: Member variable 'freebsd_thread::is_exited' is not initialized in the constructor. [uninitMemberVar]
freebsd_thread::freebsd_thread(int_process *p, Dyninst::THR_ID t, Dyninst::LWP l)
^
proccontrol/src/freebsd.h:122:17: style: Virtual function 'getEventQueue' is called from destructor '~freebsd_process()' at line 795. Dynamic binding is not used. [virtualCallInConstructor]
virtual int getEventQueue();
^
proccontrol/src/freebsd.C:795:22: note: Calling getEventQueue
int eventQueue = getEventQueue();
^
proccontrol/src/freebsd.h:122:17: note: getEventQueue is a virtual function
virtual int getEventQueue();
Compare: https://github.com/dyninst/dyninst/compare/8baccc501895%5E...767dcfb6902d
|