Commit Graph

  • 5c310f4343 skip analyzing parameters of invalid function call Andrew Kelley 2016-02-03 19:10:02 -07:00
  • c3123158b7 fix handling of implicit casts in binary operators Andrew Kelley 2016-02-03 19:07:15 -07:00
  • 39223c1847 test runner prints test names Andrew Kelley 2016-02-03 18:38:09 -07:00
  • 11a0644365 basic support for building a test target Andrew Kelley 2016-02-03 18:02:01 -07:00
  • afdb47c32d fix debug symbols for byval arguments Andrew Kelley 2016-02-03 03:32:45 -07:00
  • 815d9a7994 fix debug info for arrays being 1 element too short Andrew Kelley 2016-02-03 02:44:21 -07:00
  • f2fe231ddf add @compile_var("is_release") Andrew Kelley 2016-02-03 02:21:28 -07:00
  • b28f7d0808 types sized and aligned with LLVM target data layout API Andrew Kelley 2016-02-03 00:42:24 -07:00
  • b04e64d300 add @compile_var builtin and "is_big_endian" compile var Andrew Kelley 2016-02-02 21:46:53 -07:00
  • a50474e7cf fix false positive error with same named methods in incomplete struct Andrew Kelley 2016-02-02 20:06:51 -07:00
  • d3de73739f fix various semantic analyzer crashes Andrew Kelley 2016-02-02 19:20:02 -07:00
  • 8058b5e0a9 fix crash when incomplete struct used as argument Andrew Kelley 2016-02-02 19:09:53 -07:00
  • 79adf55699 fx segfault with colliding bogus top level functions Andrew Kelley 2016-02-02 15:58:13 -07:00
  • 7af59c76e4 build: fix libc path finding Andrew Kelley 2016-02-02 15:04:14 -07:00
  • 5824b15249 codegen: ?? prefix operator causes trap in debug mode Andrew Kelley 2016-02-02 12:37:19 -07:00
  • 5ad84e4724 unreachable causes a trap in debug mode Andrew Kelley 2016-02-02 02:43:33 -07:00
  • 6f1a7a0d70 add abort function and "cold" fn attribute Andrew Kelley 2016-02-02 00:42:06 -07:00
  • fc5ffd32e9 build: prefer llvm-config Andrew Kelley 2016-02-01 22:38:55 -07:00
  • 0216293430 add test for var local eval const expr Andrew Kelley 2016-02-01 20:54:48 -07:00
  • d8d0f65654 codegen: avoid table lookup for field access Andrew Kelley 2016-02-01 20:17:33 -07:00
  • a2035eefba codegen: avoid table lookup in assembly expression Andrew Kelley 2016-02-01 20:13:36 -07:00
  • 74eaf43768 codegen: avoid a table lookup Andrew Kelley 2016-02-01 20:05:50 -07:00
  • 0b94c83deb remove the constructor of hash map Andrew Kelley 2016-02-01 17:50:46 -07:00
  • 06f6acb4b1 inline is a keyword instead of a directive Andrew Kelley 2016-02-01 17:25:38 -07:00
  • 122b7b9966 c_import top level decl supports pub Andrew Kelley 2016-02-01 17:05:07 -07:00
  • c7eb8aaec5 build: fix release mode Andrew Kelley 2016-02-01 15:26:01 -07:00
  • 108af28c1b optimization: avoid codegening unused functions Andrew Kelley 2016-02-01 02:34:01 -07:00
  • 179443bd61 add ?? prefix operator Andrew Kelley 2016-02-01 02:11:46 -07:00
  • b3459f64e7 parseh understands macros which alias global fn ptr vars Andrew Kelley 2016-02-01 02:00:25 -07:00
  • 6b2e29c6ac parseh: do not create macro alias for extern vars Andrew Kelley 2016-02-01 00:01:30 -07:00
  • c1b5518a65 roadmap item acheived enough to put in README Andrew Kelley 2016-01-31 23:40:56 -07:00
  • 2e092e08f4 fix invalid const expr eval for negative floats Andrew Kelley 2016-01-31 21:50:41 -07:00
  • 675de74412 codegen: fix negation for floats Andrew Kelley 2016-01-31 21:32:05 -07:00
  • a4e19f94f1 support casting between floats Andrew Kelley 2016-01-31 21:22:05 -07:00
  • e74a7264ad support casting between int and float types Andrew Kelley 2016-01-31 21:05:17 -07:00
  • 954afe5d9a fix C interaction with maybe function pointers Andrew Kelley 2016-01-31 20:15:47 -07:00
  • f20d0665bb typedecl top level decls respect pub Andrew Kelley 2016-01-31 19:14:25 -07:00
  • 0ac714f0d6 add --library-path cli option Andrew Kelley 2016-01-31 18:32:07 -07:00
  • 41b95cc237 parseh: correct debug for forward decls Andrew Kelley 2016-01-31 17:48:19 -07:00
  • 773cd851fe parser: fix parsing of type decls Andrew Kelley 2016-01-31 17:17:00 -07:00
  • 1053172854 parseh handles typedef void better Andrew Kelley 2016-01-31 15:44:02 -07:00
  • c77637d172 parseh understands forward struct definitions Andrew Kelley 2016-01-31 14:53:59 -07:00
  • c1640a9246 parseh: use the decayed type not original type Andrew Kelley 2016-01-31 13:20:44 -07:00
  • 4c1f0f02d0 fix some parseh crashes Andrew Kelley 2016-01-31 02:17:08 -07:00
  • 80a4898e44 delete bogus --help text Andrew Kelley 2016-01-31 02:05:19 -07:00
  • 55c9ae1193 codegen extern global variables correctly Andrew Kelley 2016-01-31 01:51:33 -07:00
  • 3c2093fec6 parseh understands types better and handles some situations better Andrew Kelley 2016-01-31 01:20:47 -07:00
  • 436e35516a parseh properly ignores anonymous structs Andrew Kelley 2016-01-29 17:02:51 -07:00
  • e4b0435946 parseh understands variable declarations Andrew Kelley 2016-01-29 16:06:17 -07:00
  • 580df2f530 Merge pull request #102 from MovingtoMars/float_print Andrew Kelley 2016-01-29 11:20:34 -07:00
  • 2e39d9881a parseh fix crash Andrew Kelley 2016-01-29 02:38:12 -07:00
  • a94ad9e89c parseh defines can reference other defines Andrew Kelley 2016-01-29 02:17:51 -07:00
  • c1691afdd9 parseh understands number literal defines Andrew Kelley 2016-01-29 01:31:40 -07:00
  • 3fd6c0ce25 fix some inaccuracy in float printing MovingtoMars 2016-01-29 21:22:15 +13:00
  • a6c2b013fd remove some magic numbers from float printing MovingtoMars 2016-01-29 21:19:21 +13:00
  • 850f6d2d02 better f64_is_nan MovingtoMars 2016-01-29 21:12:33 +13:00
  • 90a32629c0 float printing mostly works MovingtoMars 2016-01-29 20:55:38 +13:00
  • 9b2ed1fac5 parseh understands simple character literal macro Andrew Kelley 2016-01-29 00:28:52 -07:00
  • 923e78785d attempt to get preprocessor entities from libclang Andrew Kelley 2016-01-28 23:18:18 -07:00
  • 650fdded29 fix incorrect loading of files over 8192 bytes Andrew Kelley 2016-01-28 22:38:18 -07:00
  • 53c14da220 parseh understands bodyless struct used in fn Andrew Kelley 2016-01-28 21:53:46 -07:00
  • c3516b8004 parseh handles self referential structs and fn pointers Andrew Kelley 2016-01-28 21:38:01 -07:00
  • a5c2de5fee ability to specify function type Andrew Kelley 2016-01-28 20:26:40 -07:00
  • 2bb2e61ee2 parser: allow missing fn name and missing param names Andrew Kelley 2016-01-28 18:58:28 -07:00
  • ff028525e5 add test for calling the result of if-else expr Andrew Kelley 2016-01-28 17:49:40 -07:00
  • d0a1901cb0 fix function calling of pointers Andrew Kelley 2016-01-28 17:42:29 -07:00
  • 974d69ea3d ability to call member functions directly Andrew Kelley 2016-01-28 16:55:54 -07:00
  • bb4f783528 ability to refer to member function directly Andrew Kelley 2016-01-28 16:45:17 -07:00
  • 13220ccb51 parsh understands constant sized arrays Andrew Kelley 2016-01-28 16:09:06 -07:00
  • ed3117a77f parseh understands elaborated structs and enums Andrew Kelley 2016-01-28 15:41:12 -07:00
  • 47c3a30310 parseh understands simple structs Andrew Kelley 2016-01-28 14:49:34 -07:00
  • a09b505558 null pointer optimization for ?&T Andrew Kelley 2016-01-28 14:04:22 -07:00
  • 2fc4b3629a std: remove incorrect float printing code Andrew Kelley 2016-01-28 12:54:30 -07:00
  • 347866f3a7 add parseh test for multiple fn prototypes Andrew Kelley 2016-01-28 11:57:56 -07:00
  • 6f85b956de add restrict -> noalias parseh test Andrew Kelley 2016-01-28 11:57:11 -07:00
  • f1c5d3d3a1 add parseh tests Andrew Kelley 2016-01-28 11:54:34 -07:00
  • 474340a003 parseh recognizes C enums Andrew Kelley 2016-01-28 11:03:44 -07:00
  • 137bb51e20 parseh: add --c-import-warnings option Andrew Kelley 2016-01-28 00:25:10 -07:00
  • 3f0062d7a9 Merge pull request #100 from MovingtoMars/float_print Andrew Kelley 2016-01-27 23:46:09 -07:00
  • eb08fd5f5f remove accidental printf from float printing MovingtoMars 2016-01-28 19:44:44 +13:00
  • fb7a95b3c4 cleanup float printing MovingtoMars 2016-01-28 19:43:08 +13:00
  • dc08412895 basic float printing MovingtoMars 2016-01-28 19:28:43 +13:00
  • 97c61313da c_import of stdio.h works for some functions Andrew Kelley 2016-01-27 23:22:37 -07:00
  • 51ab9b03ce Merge remote-tracking branch 'origin/master' Andrew Kelley 2016-01-27 21:11:53 -07:00
  • b6354ddd5a move AST rendering code to separate file Andrew Kelley 2016-01-27 21:10:38 -07:00
  • e3cc0c2571 Merge pull request #96 from MovingtoMars/master Andrew Kelley 2016-01-27 20:17:55 -07:00
  • 401a3361ea malloc fails on mmap error code properly MovingtoMars 2016-01-28 16:01:52 +13:00
  • c281533638 build command supports -isystem argument Andrew Kelley 2016-01-27 19:22:58 -07:00
  • 69d4f55fbf parseh: still produce output when not all types are known Andrew Kelley 2016-01-27 19:07:01 -07:00
  • 7ae6c2f33b fix stdio duplicately defining va_list Andrew Kelley 2016-01-27 19:05:58 -07:00
  • 9c502030a1 check mmap return against -1 MovingtoMars 2016-01-28 13:45:35 +13:00
  • 04b721d535 malloc fails on proper errors MovingtoMars 2016-01-28 13:18:29 +13:00
  • 1a913f6bf2 simple malloc and free using mmap MovingtoMars 2016-01-28 12:39:02 +13:00
  • d1ac1abd34 parseh correctly handles C's void type Andrew Kelley 2016-01-27 16:30:52 -07:00
  • 75cab48c1e parseh: recognize typedef types Andrew Kelley 2016-01-27 16:00:43 -07:00
  • b508441859 fix %% prefix operator codegen for simple values Andrew Kelley 2016-01-27 14:49:48 -07:00
  • 0a26586724 fix comparing incompatible number literals crash Andrew Kelley 2016-01-27 14:33:31 -07:00
  • 707154da36 fix codegen for pointers to void Andrew Kelley 2016-01-27 14:18:20 -07:00
  • 261517aa44 add explicit cast from isize/usize to pointer Andrew Kelley 2016-01-27 12:43:03 -07:00
  • e809baa866 remove bogus example code Andrew Kelley 2016-01-27 12:35:06 -07:00