New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Parse C++ class and inheritance from Debug Info #3094
base: master
Are you sure you want to change the base?
Conversation
651b120
to
c5fc189
Compare
{ | ||
Parent p{ 1, 2, 3, 4 }; | ||
Child c{ 1, 2, 3, 4, 5, 6 }; | ||
func_1(c, p); |
Check warning
Code scanning / CodeQL
Expression has no effect Warning
func_1
func_1(c, p); | ||
|
||
LittleChild lc{ 1, 2, 3, 4, 5, 6, 7 }; | ||
func_2(lc); |
Check warning
Code scanning / CodeQL
Expression has no effect Warning
func_2
ed523b6
to
a6d232f
Compare
099b9f5
to
e44449c
Compare
d61b5dd
to
4580a6d
Compare
|
||
int main(int argc __attribute__((unused)), char **argv __attribute__((unused))) | ||
{ | ||
// usleep(1000000); |
Check notice
Code scanning / CodeQL
Commented-out code Note
|
||
int x = 42; | ||
Foo foo{ 1, 2, 3, x }; | ||
uprobeFunction1(x, foo); |
Check warning
Code scanning / CodeQL
Expression has no effect Warning
uprobeFunction1
Child c{ 1, 2, 3, 4, 5, 6 }; | ||
|
||
int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; | ||
uprobeArray(arr); |
Check warning
Code scanning / CodeQL
Expression has no effect Warning
Extend the Dwarf parser to make class members and parents' members accessible.
This patch handles any shape of inheritance hierarchy, but does provide access to parents' shadowed members:
Multiple inheritance suffer from a similar problem: when a parent shadows the member of another parent.
Checklist
man/adoc/bpftrace.adoc
CHANGELOG.md