refactor(ffi-linkage): Phase 9.3-src — purge 'foreign' from src/ comments + a user-facing diagnostic
Reword every 'foreign' comment to the extern/runtime-class vocabulary matching the renamed identifiers (foreign call→extern call, foreign class→runtime class, foreign path→runtime path, the #foreign-literal comment mentions → extern, etc.). Also fixes two USER-FACING issues: the 'expected … #foreign … after type annotation' parse error no longer advertises the removed keyword, and the Android 'no #jni_main' help diagnostic now shows '#jni_class(…) extern' instead of the rejected '#foreign #jni_class'. Removed the now-dead prefix-#foreign-vs-postfix conflict branch in parseRuntimeClassDecl (the caller rejects #foreign before it runs). src/ now contains 'foreign' ONLY in the hash_foreign token machinery + its 4 rejection messages — the deprecation mechanism (kept per the 9.0 recommendation; the message MUST name #foreign to guide migration). Snapshot-neutral; suite green (646 corpus / 444 unit, 0 failed).
This commit is contained in:
@@ -1337,7 +1337,7 @@ pub const Analyzer = struct {
|
||||
if (fd.is_extern and fd.is_main) {
|
||||
try self.diagnostics.append(self.allocator, .{
|
||||
.level = .err,
|
||||
.message = "'#foreign' and '#jni_main' / '#objc_main' are mutually exclusive — a foreign-referenced class can't be the app's main entry",
|
||||
.message = "'extern' and '#jni_main' / '#objc_main' are mutually exclusive — a extern-referenced class can't be the app's main entry",
|
||||
.span = node.span,
|
||||
});
|
||||
}
|
||||
@@ -1346,7 +1346,7 @@ pub const Analyzer = struct {
|
||||
.method => |md| if (md.body != null) {
|
||||
try self.diagnostics.append(self.allocator, .{
|
||||
.level = .err,
|
||||
.message = "methods on a '#foreign' class can't have bodies — they reference foreign-runtime implementations",
|
||||
.message = "methods on a 'extern' class can't have bodies — they reference runtime implementations",
|
||||
.span = node.span,
|
||||
});
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user