NAME list uprobe args - basic type
RUN {{BPFTRACE}} -lv 'uprobe:./testprogs/uprobe_test:main'
EXPECT int argc
REQUIRES_FEATURE dwarf
TIMEOUT 5

NAME list uprobe args - pointer type
RUN {{BPFTRACE}} -lv 'uprobe:./testprogs/uprobe_test:function1'
EXPECT int\* n
REQUIRES_FEATURE dwarf
TIMEOUT 5

NAME list uprobe args - pointer type
RUN {{BPFTRACE}} -lv 'uprobe:./testprogs/uprobe_test:function2'
EXPECT struct Foo\* foo1
REQUIRES_FEATURE dwarf
TIMEOUT 5

NAME uprobe arg by name - char
PROG uprobe:./testprogs/uprobe_test:function1 { printf("c = %c\n", args->c); exit(); }
EXPECT c = x
REQUIRES_FEATURE dwarf
TIMEOUT 5
BEFORE ./testprogs/uprobe_test

NAME uprobe arg by name - pointer
PROG uprobe:./testprogs/uprobe_test:function1 { printf("n = %d\n", *(args->n)); exit(); }
EXPECT n = 13
REQUIRES_FEATURE dwarf
TIMEOUT 5
BEFORE ./testprogs/uprobe_test
