Summary: | Usage of "NULL" in systemtap script throws non-apparent error messages | ||
---|---|---|---|
Product: | systemtap | Reporter: | Srinivasa DS <srinivasa> |
Component: | translator | Assignee: | Unassigned <systemtap> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | P2 | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Host: | Target: | ||
Build: | Last reconfirmed: |
Description
Srinivasa DS
2008-03-18 12:08:10 UTC
The NULL name is being treated as an implicitly declared systemtap local, and is copied into the generated C code's context structure. These names should be prefixed with something too, just like the globals already are (s_VAR). See translate.cxx: var::value() and c_varname(). Rather than tweak the local variable naming widget, which has the potential of changing the embedded-c function API, I committed a patch that defines a NULL systemtap-level global. This works because globals do have a C-level name prefixing to avoid conflict with kernel globals/macros. patch committed |