Jon Ross-Perkins
Jon Ross-Perkins
Depends on #3976
Depends on #3977
> Looks good. I wonder how much all these extra function calls will slow down @chandlerc's performance benchmark. Noted this on #toolchain, but I think it's WAI
(approving to unblock)
`has extern` would be an option, although to note a couple concerns: - `has` here is essentially behaving as a modifier to the `extern` modifier keyword, something that I don't...
@chandlerc Do the arguments in #3980 accurately capture your perspective on the trade-offs of whether the keyword should be provided? If not, perhaps you could detail the trade-offs that you're...
> The second option might give some benefits to the toolchain, by letting it perform different operations for a declaration that expects to have a prior `extern` declaration versus one...
> > If `has_extern` existed, we could emit a compile error in the absence of an import of the extern. > > When compiling `"a"`, we don't know where the...
To be sure I understand correctly, in the proposal, this is essentially the ["Allow up to two declarations total" option](https://github.com/carbon-language/carbon-lang/pull/3980/files#diff-2dea359bc9efd69b698fdbdaef868ca81657b8497a296eecc3b269f7e8d1f597R321). Previously that had been declined because it prevents adding non-`extern`...
There was discussion about this in the [open discussion](https://docs.google.com/document/d/1s3mMCupmuSpWOFJGnvjoElcBIe2aoaysTIdyczvKX84/edit?resourcekey=0-G095Wc3sR6pW1hLJbGgE0g&tab=t.0) yesterday. There aren't many notes, and since discussion is relevant here anyways, I'm going to try to summarize what I recall...