Closed Bug 418458 Opened 17 years ago Closed 17 years ago

gcc-dehydra: temporary value destructors are not noted in process_function

Categories

(Developer Infrastructure :: Source Code Analysis, defect)

x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: benjamin, Assigned: taras.mozilla)

Details

Attachments

(1 file)

Testcase attached: dehydra notes the call to the copy-constructor for the temporary object, but never notes the call to A::~A.
Status: NEW → ASSIGNED
Excellent testcase. I found the dehydra code that skips over cleanup expressions. Constructors for temporaries work fine as arguments. This is not the case for destructors. There is no clean place to indicate temporary destructors. Currently FunctionTakesA(a) expands into FunctionTakesA(A(a)) Ideally I could try to inject the implied constructors/destructors as tempa = A(A) FunctionTakes tempa.~A() I'm not completely sure how this would interact with multiple sets of temporary constructors per function call and other similar situations.
As discussed on IRC. Seems that Dave's CFG stuff is better suited for precise analyses. Lets reopen the bug if it turns out to be a problem.
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Resolution: --- → WONTFIX
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: