mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 22:02:55 +01:00
Add fields for extern to EntityWithParamsBase (#4206)
This adds fields to `EntityWithParamsBase` to reflect the intention with `extern library` design. I'm renaming `decl_id` because it shouldn't be expected to be assigned anymore. import_ref.cpp I'm deliberately keeping on `first_owning_decl_id` (which will break when importing `extern library` declarations). Most other cases are for diagnostics, and I'm using `latest_decl_id` to try and get the closest declaration to the error. Note I'm partly splitting out this PR to show the test effect, which apparently we don't test related cases.
This commit is contained in:
@@ -198,7 +198,7 @@ auto Context::NoteIncompleteClass(SemIR::ClassId class_id,
|
||||
} else {
|
||||
CARBON_DIAGNOSTIC(ClassForwardDeclaredHere, Note,
|
||||
"Class was forward declared here.");
|
||||
builder.Note(class_info.decl_id, ClassForwardDeclaredHere);
|
||||
builder.Note(class_info.latest_decl_id(), ClassForwardDeclaredHere);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -214,7 +214,7 @@ auto Context::NoteUndefinedInterface(SemIR::InterfaceId interface_id,
|
||||
} else {
|
||||
CARBON_DIAGNOSTIC(InterfaceForwardDeclaredHere, Note,
|
||||
"Interface was forward declared here.");
|
||||
builder.Note(interface_info.decl_id, InterfaceForwardDeclaredHere);
|
||||
builder.Note(interface_info.latest_decl_id(), InterfaceForwardDeclaredHere);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user