Closed Bug 1246798 Opened 8 years ago Closed 5 years ago

[sixgill] Handle throw and nothrow expressions

Categories

(Core :: JavaScript: GC, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: sfink, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

At least with gcc 4.9.3, sixgill can't even survive the configure process because it compiles headers that include __nothrow and inline header code with throw statements.
Attached patch "Handle" throw()Splinter Review
This is a cheap hack to make the analysis do something vaguely sane rather than bomb out. It ignores __nothrow and treats throw as a (void) statement. It's enough to keep the analysis from throwing out a ton of functions, including several from gcc header files.

This is mostly helpful in my attempt to reduce the number of functions that are discarded during analysis, since I have discovered some important ones are getting missed. (Nothing that would produce false negatives for rooting analysis, AFAIK.)

It might be slightly better to treat it as a 'return', so that the analysis knows that anything after it is unreachable, but it simply doesn't matter for my purposes.
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: