Repository navigation
llgo:type C => llgo:cdecl - #59
Conversation
There was a problem hiding this comment.
Review: llgo:type C => llgo:cdecl
Mechanical rename of the llgo directive //llgo:type C (and the inconsistently-spaced // llgo:type C) to //llgo:cdecl across the C/C++/Python FFI bindings, plus removal of the standalone test programs under c/bdwgc/_test/.
Verified:
- Rename is complete and consistent — no
llgo:typeoccurrences remain anywhere in the repo; all 64 new//llgo:cdecldirectives use the correct no-space Go directive form. - Each directive sits immediately above its declaration with no intervening blank line.
c/libuv/async.gocorrectly inserts a bare//separator so the directive attaches totype AsyncCb— this also activates a directive that was previously inert due to the leading space. - Several prior
// llgo:type Clines carried a space and so were not valid Go directives; normalizing them to//llgo:cdeclis a genuine correctness improvement, not just cosmetic. - Deleting
c/bdwgc/_test/leaves no dangling references;c/bdwgc/bdwgc.gois self-contained. gofmtis clean on the changed files.
No correctness, performance, or security issues found. The actual ABI/calling-convention behavior depends on the llgo compiler mapping //llgo:cdecl to the former //llgo:type C semantics, which lives in the compiler and is out of scope for this diff.
Optional, out of scope: the repo still uses the spaced // llgo:link ... form in many places; a follow-up could normalize those to the no-space directive form for consistency.
|
|
||
| /* | ||
| // llgo:type C | ||
| //llgo:cdecl |
There was a problem hiding this comment.
Minor / informational: these two directives (this line and line 34) are inside the /* ... */ block comment that spans lines 28-39, so the llgo compiler never sees them — the rename has no functional effect here (same as the old // llgo:type C). Harmless, but worth knowing it's a documentation-only touch-up, not an active directive, until the block is uncommented.
No description provided.