Closed Bug 1833555 Opened 2 years ago Closed 5 months ago

Use AutoTemplateContext machinery to produce concrete results for OverloadExpr

Categories

(Webtools :: Searchfox, enhancement)

enhancement

Tracking

(firefox135 fixed)

RESOLVED FIXED
Tracking Status
firefox135 --- fixed

People

(Reporter: botond, Assigned: nicolas.guichard)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

For CXXDependentScopeMemberExpr, we produce both heuristic results and, using the AutoTemplateContext machinery, concrete results.

For OverloadExpr, we currently only produce heuristic results. We could use the AutoTemplateContext machinery to produce concrete results as well.

This would only make sense to do after bug 1833552 is implemented, because in the case of OverloadExpr, the concrete results would strictly be a subset of the heuristic results, so it only makes sense to generate them if we're going to do something beyond just a straight merge with the heuristic results (which would be a no-op).

See Also: → 1835692
Blocks: 1905433
Attached file GitHub Pull Request
Assignee: nobody → nicolas.guichard
Status: NEW → ASSIGNED

Now that the context menu allows for differentiating between heuristic
and concrete template instantiations, mark OverloadExpr location to be
visited in AnalyzeDependent mode to have concrete results.

In the added WithOverloads::Overloaded test case, the float and bool
overloads are only found heuristically (and are thus marked with
cppTemplateHeuristic) while the int overload is also found by visiting
concrete template instantiations.

This is a bump of the Mozsearch clang plugin and was reviewed upstream:
https://github.com/mozsearch/mozsearch/pull/844

Pushed by nicolas.guichard@kdab.com: https://hg.mozilla.org/integration/autoland/rev/ee62c8f7cd64 Mark OverloadExpr locations to be visited in instantiations. r=asuth
Status: ASSIGNED → RESOLVED
Closed: 5 months ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: