Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Guard the calls with checks #669

Closed
wants to merge 13 commits into from
Closed

Guard the calls with checks #669

wants to merge 13 commits into from

Conversation

MarcelGarus
Copy link
Member

@MarcelGarus MarcelGarus commented Aug 17, 2023

Depends on #645

This PR makes it so that Call instruction can rely on more stuff:

  • the callee is not a tag (there's now a tagWithValue builtin that associates a tag with a value)
  • ✨.typeOf callee is Function
  • the number of arguments matches the expected count

Checklist

  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been added / updated (for bug fixes / features)

@jwbot jwbot added P: Compiler: Language Server Package: The Candy Language Server P: Compiler: Frontend Package: The compiler frontend P: Compiler: Fuzzer Package: Candy's built-in fuzzer fuzzing Candy code P: Compiler: VM Package: The VM executing Candy byte code (LIR) P: Compiler: CLI Package: Candy's command-line interface P: Compiler: Inkwell Backend Package: Inkwell Compiler Backend producing native code via LLVM labels Aug 17, 2023
@jwbot jwbot enabled auto-merge August 17, 2023 18:24
@MarcelGarus MarcelGarus marked this pull request as draft August 17, 2023 18:27
auto-merge was automatically disabled August 17, 2023 18:27

Pull request was converted to draft

@JonasWanke
Copy link
Member

JonasWanke commented Feb 29, 2024

Can this be closed since it's superseded by #909?

@JonasWanke JonasWanke closed this Feb 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P: Compiler: CLI Package: Candy's command-line interface P: Compiler: Frontend Package: The compiler frontend P: Compiler: Fuzzer Package: Candy's built-in fuzzer fuzzing Candy code P: Compiler: Inkwell Backend Package: Inkwell Compiler Backend producing native code via LLVM P: Compiler: Language Server Package: The Candy Language Server P: Compiler: VM Package: The VM executing Candy byte code (LIR)
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants