index
:
cup
master
Unnamed repository; edit this file 'description' to name the repository.
about
summary
refs
log
tree
commit
diff
log msg
author
committer
range
path:
root
/
src
Commit message (
Expand
)
Author
Age
Files
Lines
*
[cup] Self-hosting is now possible! Make some tweaks to match C output
Mustafa Quraish
2022-02-07
2
-3
/
+2
*
[C]: Add `here` keyword that evaluates to a string with it's location
Mustafa Quraish
2022-02-06
1
-0
/
+9
*
Some very minor fixes (look at message)
Mustafa Quraish
2022-02-05
1
-0
/
+1
*
Allow empty return statements for void functions
Mustafa Quraish
2022-02-05
2
-4
/
+15
*
Fix label counts during code generation for `||` and `&&`
Mustafa Quraish
2022-02-05
1
-10
/
+10
*
Add `lseek` and `mmap` syscall info
Mustafa Quraish
2022-02-05
1
-1
/
+16
*
Allow function declarations without a definition
Mustafa Quraish
2022-02-05
3
-14
/
+41
*
Handle command-line arguments properly on linux
Mustafa Quraish
2022-02-05
1
-4
/
+13
*
Add `OS_IS_MACOS` and `OS_IS_LINUX` constants as builtins
Mustafa Quraish
2022-02-05
1
-0
/
+8
*
Add support for some more binary ops: |, &, ^
Mustafa Quraish
2022-02-05
7
-18
/
+58
*
Add `sizeof(<type>)` operator that can return the size of a type.
Mustafa Quraish
2022-02-05
2
-0
/
+9
*
Add ability to initialize global variables
Mustafa Quraish
2022-02-05
3
-4
/
+14
*
Add `void` type and allow void* to be assigned to other ptr types
Mustafa Quraish
2022-02-05
4
-7
/
+18
*
Allow `builtins.c` to inject constants into program, use for syscalls
Mustafa Quraish
2022-02-05
6
-69
/
+95
*
Add an enum-like-but-not-really structure
Mustafa Quraish
2022-02-04
2
-0
/
+49
*
Some minor bug fixes
Mustafa Quraish
2022-02-04
2
-4
/
+12
*
Minor fixes, rearranging, whitespace trimming. No functional changes.
Mustafa Quraish
2022-02-04
3
-21
/
+19
*
Don't open/parse a file that's been included more than once
Mustafa Quraish
2022-02-04
1
-21
/
+39
*
Add support for read-only constant expressions
Mustafa Quraish
2022-02-04
3
-6
/
+120
*
Add `exit()` syscall builtin
Mustafa Quraish
2022-02-03
1
-0
/
+3
*
Modify implementation of structs to support unions
Mustafa Quraish
2022-02-03
4
-13
/
+19
*
Add support for basic structs
Mustafa Quraish
2022-02-03
8
-6
/
+192
*
Add automatic type inference for initialized variable declarations
Mustafa Quraish
2022-02-03
1
-17
/
+27
*
Add pre-increment and pre-decrement operators.
Mustafa Quraish
2022-02-03
2
-2
/
+34
*
Add an implicit block around a `for` loop, allow statement init
Mustafa Quraish
2022-02-03
1
-12
/
+27
*
Push `argc` and `argv` to the `main()` function
Mustafa Quraish
2022-02-03
1
-0
/
+10
*
Add helper to create builtins for syscalls + implement `read()`
Mustafa Quraish
2022-02-03
5
-74
/
+125
*
Check for integer-like types in type-checking instead of exact ones
Mustafa Quraish
2022-02-03
1
-7
/
+7
*
Remove `putc` intrinsic and replace with `write(fd, buf, size)`
Mustafa Quraish
2022-02-03
4
-10
/
+30
*
Move builtins to a separate file
Mustafa Quraish
2022-02-03
3
-28
/
+54
*
Allow implicitly converting between integer-like-types
Mustafa Quraish
2022-02-03
3
-4
/
+32
*
Avoid pointer-arithmetic multiplications if we have `char*`
Mustafa Quraish
2022-02-03
1
-24
/
+34
*
Add support for `char` type + string/char literals
Mustafa Quraish
2022-02-02
8
-21
/
+153
*
Remove default initialization to 0 for variable declarations
Mustafa Quraish
2022-02-02
2
-5
/
+3
*
Handle OP_ASSIGN in `print_ast()`
Mustafa Quraish
2022-02-02
1
-0
/
+6
*
Add initial support for arrays (also no testing)
Mustafa Quraish
2022-02-02
6
-10
/
+95
*
Move type-related stuff to a separate file
Mustafa Quraish
2022-02-02
5
-194
/
+217
*
Type checking of expressions / functions!
Mustafa Quraish
2022-02-02
6
-14
/
+210
*
Use `type*` instead of `type&` to denote a pointer type (for now)
Mustafa Quraish
2022-02-02
1
-1
/
+1
*
Add support for pointers! (tests missing)
Mustafa Quraish
2022-02-02
4
-17
/
+30
*
Refactor variable access+assignment in terms of `generate_lvalue()`
Mustafa Quraish
2022-02-02
1
-20
/
+21
*
Add `size_for_type()` helper instead of hard-coding variable sizes
Mustafa Quraish
2022-02-02
3
-5
/
+16
*
Modify how types are stored.
Mustafa Quraish
2022-02-02
4
-99
/
+143
*
Defer: Pop elements off the defer-stack when returning
Mustafa Quraish
2022-02-01
1
-2
/
+4
*
Add basic `defer` implementation.
Mustafa Quraish
2022-02-01
4
-0
/
+27
*
Global variables now supported! + some fixes to OP_ASSIGN
Mustafa Quraish
2022-01-31
4
-42
/
+93
*
Add ability to import other files
Mustafa Quraish
2022-01-31
4
-3
/
+62
*
Minor fixes to code generation
Mustafa Quraish
2022-01-31
1
-11
/
+11
*
Fix offset for local variables
Mustafa Quraish
2022-01-31
1
-1
/
+1
*
Make `Lexer_new` return a pointer instead of the object.
Mustafa Quraish
2022-01-31
3
-8
/
+8
[next]