diff options
| author | _ov4 <ov4@ov4.org> | 2026-10-18 08:09:06 +0000 |
|---|---|---|
| committer | _ov4 <ov4@ov4.org> | 2026-10-18 08:09:06 +0000 |
| commit | 30fced09675acfd2b9ab6db6be8359a70d3f0402 (patch) | |
| tree | 88dc4587cb71d9dc9bdd9a57c4e2de8a98d7f06e /AGENTS | |
| parent | 345e3d419eafb0e234aecb4a33f37efe2afbbf53 (diff) | |
feat(operators): allow member assignment operator overloads
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'AGENTS')
| -rw-r--r-- | AGENTS/CONVENTIONS.md | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/AGENTS/CONVENTIONS.md b/AGENTS/CONVENTIONS.md index b8ca3e9..f72cb86 100644 --- a/AGENTS/CONVENTIONS.md +++ b/AGENTS/CONVENTIONS.md @@ -211,3 +211,5 @@ ExceptionHandler, truncates its result and retains the final uncaught handler. Identifiers may begin with an underscore. The case-insensitive `__cps_` prefix is reserved in every user identifier, including EXTERN declarations. **Library units.** Line-leading `#LIB` marks SourceUnit::IsLibrary. RuntimeCheck uses the externally visible i32 `__cps_user_line`; FunctionGen’s shared call hook updates it only on non-library to library calls. Runtime helper line arguments use RuntimeCheck::lineValue too. Compiler diagnostics retain the owning file location. + +Assignment operators are member-only `OVERLOAD PROCEDURE OPERATOR<-` with one explicit parameter. emitAssignment resolves the exact RHS static type before fallback storage copying. Internal assignment/constructor BYREF bindings may use designators or materialized temporaries; ordinary BYREF calls still require bare variables. |
