diff options
| author | Jack Koenig | 2020-10-12 15:26:51 -0700 |
|---|---|---|
| committer | GitHub | 2020-10-12 22:26:51 +0000 |
| commit | 1b15dca5065a1a12c097afbb6eac6a8ff8d8e20a (patch) | |
| tree | bd3e309a3ff6ee531e6205adf5e183675db2d3c8 /src/main | |
| parent | 45b07269598b651818c7561b1f9d28b690bf379e (diff) | |
When prefixing with a data, eagly get local name (#1614)
Fixes #1606
Previously, the Data itself would be put on the prefix stack and its
full name would be used as the prefix for subsequent names. This meant
that prefixes would grow quadratically as the prefix is present both on
the Data pushed to the stack, and on the stack itself. This is fixed by
just using the "local" name of the Data being pushed on the stack.
A related issue is deferring the name resolution. This led to unintuitive
behavior when the name of a Data used as a prefix is overridden later
(usually when the Data is a return value). The overriding name would
show up in prefixes twice instead of once. It is much more intuitive to
grab the name at the moment of the connection creating the prefix rather
than deferring to later.
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Diffstat (limited to 'src/main')
0 files changed, 0 insertions, 0 deletions
