Closed Bug 512033 Opened 15 years ago Closed 15 years ago

Implement TYPE_PTRMEMFUNC_P in treehydra

Categories

(Developer Infrastructure :: Source Code Analysis, defect)

x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: dwitte, Assigned: dwitte)

References

Details

Attachments

(1 file)

Attached patch testcaseSplinter Review
I hit this when building a callgraph for xpcom/threads/nsProcessCommon.cpp. Testcase attached. When attempting to determine the type of the ptr-to-member-function, we currently take the wrong codepath (its TREE_CODE is RECORD_TYPE) and totally botch the template bits - we should be treating it more like a METHOD_TYPE. For reference, the correct codepath based on gcc's prettyprinter would be the branch at gcc/cp/error.c:281 which jumps to line 370. Taras, any idea what's needed here? gcc_compat.js says // TODO This doesn't work, need to get lang_specific into Treehydra function TYPE_PTRMEMFUNC_FLAG(tree) { throw new Error("ni"); do_dehydra_dump(tree.type.lang_specific, 0, 1); return tree.type.lang_specific.ptrmemfunc_flag; return tree.u.ptrmemfunc_flag; } I thought we had access to lang_specific stuff at this point, or is there more to it?
Got it working... will post patch soon. (Stepping through gcc is fun!)
Assignee: nobody → dwitte
Fixed per bug 512887.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Product: Core → Firefox Build System
Product: Firefox Build System → Developer Infrastructure
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: