Commit Graph

  • 9dbedb02cc fix compile -Werrors Josh Wolfe 2015-12-14 10:31:32 -07:00
  • 630917b29b std: factor out the write syscall and make it public Andrew Kelley 2015-12-14 03:06:54 -07:00
  • e411467e1d add number literal type Andrew Kelley 2015-12-14 02:46:37 -07:00
  • 3d8eb10897 fix incorrect debug info path to imports Andrew Kelley 2015-12-13 14:33:52 -07:00
  • 9ec892539e prefer checking a type's id over comparing it to a builtin_types entry Josh Wolfe 2015-12-13 11:59:34 -07:00
  • bd77bc749a structs are working Andrew Kelley 2015-12-12 22:55:29 -07:00
  • 0f02e29a2b codegen and tests for modify operators. closes #16 Josh Wolfe 2015-12-12 19:47:37 -07:00
  • 5cb5f5dbf6 parsing assignment operators Josh Wolfe 2015-12-12 19:07:29 -07:00
  • eb1542c102 tokenizing assignment operators Josh Wolfe 2015-12-12 18:17:27 -07:00
  • 2082588201 fix short circuit expressions Josh Wolfe 2015-12-12 17:33:45 -07:00
  • 64dd0b8d95 fix a + b + c and similar Josh Wolfe 2015-12-12 17:03:44 -07:00
  • 38f12adbda progress on struct support Andrew Kelley 2015-12-12 02:34:09 -07:00
  • ac630d354d std: print_str no longer requires length argument Andrew Kelley 2015-12-12 02:05:08 -07:00
  • a10277bd94 prepare codebase for struct and string support Andrew Kelley 2015-12-12 00:10:37 -07:00
  • 4c16eaa640 readme: update current status Andrew Kelley 2015-12-11 04:37:23 -07:00
  • f740268ab7 move roadmap to github issues Andrew Kelley 2015-12-11 03:57:41 -07:00
  • d697404f64 hello world working without libc Andrew Kelley 2015-12-11 03:55:26 -07:00
  • 15ba5bc54e provide std.zig and add it to import paths Andrew Kelley 2015-12-10 17:42:47 -07:00
  • 0dbee2300e add inline assembly support Andrew Kelley 2015-12-10 15:34:38 -07:00
  • 3e8a98fa61 add language reference documentation Andrew Kelley 2015-12-09 15:20:31 -07:00
  • 28debf1fc3 doc: update vim syntax Andrew Kelley 2015-12-09 12:32:33 -07:00
  • 367ea908bd readme: update int types Andrew Kelley 2015-12-09 12:32:26 -07:00
  • 7b181b51ad parseh: cleanup types Andrew Kelley 2015-12-09 01:23:46 -07:00
  • 6a48c007a6 fix typo Josh Wolfe 2015-12-09 01:07:27 -07:00
  • dfda85e870 ability to call external variadic functions Andrew Kelley 2015-12-09 01:03:04 -07:00
  • 4eff5f114b parseh: better results for stdio.h Andrew Kelley 2015-12-08 23:12:36 -07:00
  • face8d65a8 parseh: add c header files Andrew Kelley 2015-12-08 17:51:59 -07:00
  • 358d699fa9 add test for arrays Andrew Kelley 2015-12-08 15:46:36 -07:00
  • e8550814c5 support assigning to arrays Andrew Kelley 2015-12-08 15:31:43 -07:00
  • 6e0c3dc173 array access support Andrew Kelley 2015-12-08 14:47:17 -07:00
  • 75efc31329 add array access syntax Andrew Kelley 2015-12-08 14:15:34 -07:00
  • 2f0e4e9cb2 codegen does signed, unsigned, and floating point math Andrew Kelley 2015-12-08 12:25:30 -07:00
  • 3e06ed0e8c codegen: set target triple and data layout Andrew Kelley 2015-12-08 00:27:50 -07:00
  • 5dfe4d6387 codegen: do all the allocas at beginning of function Andrew Kelley 2015-12-07 23:40:58 -07:00
  • 113f0c9450 add local variables to debug info Andrew Kelley 2015-12-07 23:09:48 -07:00
  • 9c9ea93519 integrate debug scopes with block context Andrew Kelley 2015-12-07 22:11:04 -07:00
  • 1279fe0caa all variables have memory addresses Andrew Kelley 2015-12-07 20:57:45 -07:00
  • b66fb607bf add debugging info for array type Andrew Kelley 2015-12-07 20:07:46 -07:00
  • f6eecfe5f4 getting started on array types Josh Wolfe 2015-12-07 08:29:19 -07:00
  • 94e61287e7 let is now a statement, not an expression Josh Wolfe 2015-12-06 23:49:20 -07:00
  • 66e3aa0910 initialize mutable variables to zero Josh Wolfe 2015-12-06 23:33:10 -07:00
  • 180f539f67 cmake needs to be taught a lesson in debian paths Josh Wolfe 2015-12-06 23:19:03 -07:00
  • 3c3be10a60 add mutable local variables Andrew Kelley 2015-12-06 23:09:46 -07:00
  • dfb48a2c6b update README Andrew Kelley 2015-12-06 22:12:49 -07:00
  • 5fd754c84a fix hello world example Andrew Kelley 2015-12-06 22:01:05 -07:00
  • c6fff3b2c0 update README Andrew Kelley 2015-12-06 21:55:28 -07:00
  • daa3b6bfa3 add unused label error Andrew Kelley 2015-12-05 21:04:57 -07:00
  • f49e857b9b run_tests supports --reverse arg Andrew Kelley 2015-12-04 23:04:49 -07:00
  • c7615c1a80 error for extern function with void parameter Andrew Kelley 2015-12-04 14:33:57 -07:00
  • 139e5ca08f fix reading source from stdin Andrew Kelley 2015-12-04 14:33:40 -07:00
  • cd6283e8c4 parseh: fix wrong fn parameters in some cases Andrew Kelley 2015-12-04 11:45:11 -07:00
  • 5144c4fa37 exporting .h file supports void Andrew Kelley 2015-12-03 17:30:44 -07:00
  • a398afa7cc more C header interoperability Andrew Kelley 2015-12-03 17:06:04 -07:00
  • 96d4d0d674 parseh: detect fixed size integer types Andrew Kelley 2015-12-03 16:12:10 -07:00
  • ad3f98c615 parseh command, parses a C .h file and produces extern decls Andrew Kelley 2015-12-03 15:59:14 -07:00
  • 174e58a05f test for void parameters Josh Wolfe 2015-12-03 14:33:13 -07:00
  • f4b9b03f54 fix codegen for void parameters Josh Wolfe 2015-12-03 14:29:19 -07:00
  • 137fe99258 test for separate scopes not colliding Josh Wolfe 2015-12-03 13:26:49 -07:00
  • 09a78d6235 can't declare unreachable variables Josh Wolfe 2015-12-03 12:38:28 -07:00
  • 90565a5109 correkt spelling error Josh Wolfe 2015-12-03 12:25:27 -07:00
  • 22fccdbb0d tests for bool stuff Josh Wolfe 2015-12-03 12:19:28 -07:00
  • f1aaf1353e add bool literals Josh Wolfe 2015-12-03 12:15:07 -07:00
  • 6494cf208e fix if-else type mismatch crash Josh Wolfe 2015-12-03 11:56:59 -07:00
  • 0c2cc9d2cf tests for local variables Josh Wolfe 2015-12-03 11:06:05 -07:00
  • 5af4ef88ac local variables work Josh Wolfe 2015-12-03 10:56:17 -07:00
  • 708cae3786 fix analysis for variable reference Josh Wolfe 2015-12-03 10:19:00 -07:00
  • cb69cb0f26 analysis for variable declaration, but not variable reference Josh Wolfe 2015-12-03 10:10:33 -07:00
  • f8ca6c70c7 add labels and goto Andrew Kelley 2015-12-03 00:47:35 -07:00
  • c89f77dd8e parsing variable declaration Josh Wolfe 2015-12-02 16:33:06 -07:00
  • ffc2c9225f fix execution reaches end of non-void Andrew Kelley 2015-12-02 12:36:09 -07:00
  • e94681b961 add test for undeclared identifier error Andrew Kelley 2015-12-02 00:59:58 -07:00
  • 370de7386c fix parameter access and thus shared library example Andrew Kelley 2015-12-02 00:53:57 -07:00
  • 08a2311efd support if conditionals Andrew Kelley 2015-12-01 21:19:38 -07:00
  • 1ed926c321 implicit void statements and all tests pass with type checking Josh Wolfe 2015-12-01 15:54:46 -07:00
  • c6a9ab107b string literals have type *const u8 Josh Wolfe 2015-12-01 14:41:03 -07:00
  • ab327344b6 merge conflicts Josh Wolfe 2015-12-01 10:44:30 -07:00
  • dfb6682089 add test for bad import Andrew Kelley 2015-12-01 02:29:21 -07:00
  • 58e375d0a1 support multiple files Andrew Kelley 2015-12-01 02:08:58 -07:00
  • 29f24e3c50 add --color cli arg to override tty detection Andrew Kelley 2015-12-01 01:06:10 -07:00
  • 257cf09472 colored error messages that tell the source file Andrew Kelley 2015-12-01 00:50:11 -07:00
  • 31cf43de54 analyze looks for root export decl only in the root source file Andrew Kelley 2015-11-30 23:06:29 -07:00
  • 9278dbedd5 Merge remote-tracking branch 'origin/master' into type-checking Josh Wolfe 2015-11-30 22:54:00 -07:00
  • cd68969115 closer to multiple files working Andrew Kelley 2015-11-30 22:53:37 -07:00
  • 18cfcfe44f fix ast printer names Josh Wolfe 2015-11-30 22:40:52 -07:00
  • 00f4c05784 merge conflicts Josh Wolfe 2015-11-30 22:12:21 -07:00
  • 55b8472374 refactor code to prepare for multiple files Andrew Kelley 2015-11-30 19:58:53 -07:00
  • abbc395701 implement basics of type checking Josh Wolfe 2015-11-30 18:43:45 -07:00
  • ef482ece7c no more TypeId. use g->builtin_types. Josh Wolfe 2015-11-30 15:36:58 -07:00
  • b77c423f77 all LLVM C++ API contained to one file Andrew Kelley 2015-11-30 14:43:09 -07:00
  • f36255b670 Merge branch 'master' of github.com:andrewrk/zig Josh Wolfe 2015-11-30 14:13:04 -07:00
  • 757ebefd60 untangle analyze_node into a stricter call graph Josh Wolfe 2015-11-30 14:13:00 -07:00
  • 4ccb98bdce analyze no longer depends on llvm C++ API Andrew Kelley 2015-11-30 14:10:07 -07:00
  • 014711c57e rename variable Josh Wolfe 2015-11-30 09:38:31 -07:00
  • 9e0ff6faa2 factor analysis code out of codegen Josh Wolfe 2015-11-30 09:14:58 -07:00
  • 020f854f6f add bad version string test case Andrew Kelley 2015-11-30 02:14:54 -07:00
  • 8f0f318c39 add directive to specify root export version Andrew Kelley 2015-11-30 02:11:31 -07:00
  • ac0c5a3707 minor parser refactoring Andrew Kelley 2015-11-30 01:26:01 -07:00
  • 9b477230e0 ability to generate shared library and h file Andrew Kelley 2015-11-29 17:28:28 -07:00
  • f4721857ed inline PrimaryExpr ast node Josh Wolfe 2015-11-29 17:16:32 -07:00
  • 63d4e3ce1e add missing panic for shared library output Andrew Kelley 2015-11-29 15:09:43 -07:00