D issues are now tracked on GitHub. This Bugzilla instance remains as a read-only archive.
Issue 15311 - [dmd-internal] DsymbolExp.resolve and DotIdExp.semanticY (eright.op == TOKimport) need to be merged
Summary: [dmd-internal] DsymbolExp.resolve and DotIdExp.semanticY (eright.op == TOKimp...
Status: RESOLVED WORKSFORME
Alias: None
Product: D
Classification: Unclassified
Component: dmd (show other issues)
Version: D2
Hardware: All All
: P1 normal
Assignee: No Owner
URL:
Keywords:
Depends on: 14858 15116 15117 15310
Blocks:
  Show dependency treegraph
 
Reported: 2015-11-10 02:56 UTC by Kenji Hara
Modified: 2022-10-13 08:13 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description Kenji Hara 2015-11-10 02:56:44 UTC
DsymbolExp.resolve converts a D symbol to corresponding expression object.

In DotIdExp.semanticY, if eright.op == TOKimport, the found symbol is converted to corresponding expression object with the 'eleft' context.

They're doing similar work, but they are not yet enough consistent. Issue 14858, issue 15116, issue 15117, and issue 15310 (14603 and 14604) have been caused by the inconsistency between them.

I think, DsymbolExp.resolve should take one more parameter 'eleft', and if it's not null, it should work like DotIdExp.semanticY.
Comment 1 RazvanN 2022-10-13 08:13:56 UTC
DsymbolExp.resolve is named symbolToExp now and its implementation has diverged significantly from semanticY. As such, this bug report is no longer relevant.