-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
native, checker: builtin module for vlang #17782
base: master
Are you sure you want to change the base?
Conversation
Expressions to implement:
|
Statements to implement:
|
Other bugs found
|
A huge and important project. Good luck! |
thanks! |
#17839 implements rune literals/printing, pointer comparison support and general helper function improvements |
#18036 should make debugging much easier |
Currently refactoring the codegen process: #18057 |
#18546 splits up the code generator into multiple files and refactors the AssignStmt codegen |
#18703 implements support for |
This PR is the beginning of making the builtin module work with the native backend.
As discussed on the Discord,
native
will utilize the already existing implementation of builtin used by the C backend, sincelibc
is the official and most consistent API on many OSs apart from Linux.Here is a list of things that still need to be implemented to get
builtin
working:builtin
module fornative
ast.AssignStmt
to accept all expressionsast.CastExpr
(and many more)println()
,assert()
,exit()
,C.syscall()
, etc. by theirbuiltin
counterparts(I will extend this list as needed)
For debugging purposes, it may be helpful if we could add a flag to toggle the inclusion of
builtin
incompile_native()
, so that testing is still possible.