Commit Graph

823 Commits (c5b2bdae112d37a6ed7ca7010752f048f08b1e27)

Author SHA1 Message Date
Steve Perkins c5b2bdae11 quicksort 2016-11-02 18:10:44 -04:00
Andrew Kelley e4271f4fb2 more test coverage, change 'got' to 'found' in errors 2016-10-28 12:15:37 -04:00
Andrew Kelley e3857a361c more test coverage 2016-10-28 12:04:46 -04:00
Andrew Kelley c982077156 Merge pull request #206 from fsaintjacques/fix/doc-langref
capitalize builtins in doc
2016-10-25 02:36:47 -04:00
François Saint-Jacques c2710283b5 capitalize builtins in doc 2016-10-21 22:43:08 -04:00
Andrew Kelley a098c07aa7 fix warning on some compiler versions
closes #202
2016-10-03 14:24:23 -04:00
Andrew Kelley 0562111b02 fix regression: debug safety sometimes incorrectly disabled 2016-09-28 11:29:47 -04:00
Andrew Kelley b581da41f8 remove compiler directives
* add `setFnTest`, `setFnVisible`, `setFnStaticEval`,
   `setFnNoInline` builtin functions to replace previous
   directive functionality
 * add `coldcc` and `nakedcc` as keywords which can be used as part
   of a function prototype.
 * `setDebugSafety` builtin can be used to set debug safety features
   at a per block scope level.
 * closes #169
2016-09-28 02:33:32 -04:00
Andrew Kelley e5fd8efcb6 clean up test directory 2016-09-27 00:09:43 -04:00
Andrew Kelley 183976b242 add this keyword refers to thing in immediate scope
See #169
2016-09-26 23:47:30 -04:00
Andrew Kelley f4d7c91363 std/rand: remove unneeded TODO 2016-09-26 22:42:25 -04:00
Andrew Kelley 87b7c28c9a cstr.len and cstr.cmp can run at compile time
closes #140
2016-09-26 22:33:33 -04:00
Andrew Kelley 7ce7e2c9d1 emit error for extern function
with byvalue return value or parameter.

currently we don't codegen byvalue parameters or return values
correctly for C compatibilty functions so instead of generating
incorrect code, we emit a compile error.

eventually we'll support this feature and remove the compile error.

See #180
2016-09-26 20:01:42 -04:00
Andrew Kelley 7f4d4bdb3f fix crash when doing binary not on integer literal
closes #201
2016-09-26 19:42:51 -04:00
Andrew Kelley 4b68224c60 add error message for method call on non method
closes #199
2016-09-26 01:01:02 -04:00
Andrew Kelley 01e13de7ca refactor field access code into more generic container code 2016-09-26 00:06:37 -04:00
Andrew Kelley 683da0e4ec ability to have struct to have a field which is slice of itself
closes #197
2016-09-25 13:39:46 -04:00
Andrew Kelley e06885d64e enums support member functions 2016-09-23 15:18:02 -04:00
Andrew Kelley 9ec6a78f12 fix compiler crash for misspelled type with pointer only reference
closes #196
2016-09-23 11:53:05 -04:00
Andrew Kelley 46eb77dbb2 stack trace is able to figure out compilation unit
each address is contained within

also fix a bug having to do with codegen for enum value
initialization expressions
2016-09-23 02:00:23 -04:00
Andrew Kelley 4b902b44a2 os: fix file descriptor leak in os_exec
See #182
2016-09-22 10:48:42 -04:00
Andrew Kelley c64f6f9503 fix compile crash when leaving out for loop parameter 2016-09-22 10:40:05 -04:00
Andrew Kelley 7aeca9bfed fix incorrect linking from previous commit 2016-09-21 17:40:50 -04:00
Andrew Kelley 3f8f0b9bba exporting an object creates an h file 2016-09-21 11:18:49 -04:00
Andrew Kelley b97bfc3ecb fix error when switch prong has implicit cast
closes #194
2016-09-20 16:10:34 -04:00
Andrew Kelley 158225a203 avoid emitting "no member" errors when use import fails
closes #192
2016-09-19 21:23:36 -04:00
Andrew Kelley e397ea43c0 tests: correct test name 2016-09-19 20:19:02 -04:00
Andrew Kelley 3239b3cb69 use size_t for indexes
protect against incorrect copies in debug mode
2016-09-19 11:54:01 -04:00
Andrew Kelley 4c0259b107 ability to specify -framework linker args for MacOS 2016-09-18 21:28:06 -04:00
Andrew Kelley b738cbdc76 fix compiler crash involving slice with const slice child
also fix compiler crash for multiple errors in main fn prototype

closes #191
2016-09-15 14:09:08 -04:00
Andrew Kelley 3f05fdc8e8 tests: use a more robust path to self_hosted.zig
closes #184
2016-09-14 03:10:56 -04:00
Andrew Kelley c65fe384dd Merge branch 'macos-aindigo'
Closes #189
2016-09-14 02:47:54 -04:00
Andrew Kelley f1761632da darwin compat fixups
- delete commented out code
 - delete redundant check for missing
   mmacosx-version-min/maxdir
 - add TODO comment in std library
 - rename 'os' to 'self' in io.zig
 - `openSelfExe` aborts on darwin instead of compile error
 - only allow warnings on the one parseh test that has
   `#include <stdint.h>`.
2016-09-14 02:47:16 -04:00
alter cf9b21c09f MacOSX compatibility
- Implemented some syscall for MacOSX
- tested on : El Capitan 10.11 x86_64
- make self hosted test run on macosx
- modified run_test so it does not fail when parseh throws
  warnings (most of them are related to buildin types from
  gcc that arent defined in header files and unions)
- making -mmacosx-version-min and -mios-version-min works like
  gcc (command line paramers have precedence over enviroment variables)
2016-09-14 02:46:02 -04:00
Andrew Kelley 06f2f4d64b change `unreachable{}` to `@unreachable()`
instead of a container init expression, it's a builtin
function call.
2016-09-13 16:46:27 -04:00
Andrew Kelley ea2f6594ce std: fix compile error for unsupported os 2016-09-13 15:36:30 -04:00
Andrew Kelley 6abd8b6405 fix crash with []type{} expression 2016-09-13 15:35:56 -04:00
Andrew Kelley 56f8325799 add compile error for assigning through const
pointer and slice

closes #188
2016-09-11 14:12:24 -04:00
Andrew Kelley 28811234bb fix compile error message for wrong arg count on method 2016-09-10 20:53:57 -04:00
Andrew Kelley 1fa4d2a5af rename LLVMZig to ZigLLVM 2016-09-10 20:53:57 -04:00
Andrew Kelley 077cd4b9a4 langref: correct builtin function names 2016-09-10 20:53:57 -04:00
Andrew Kelley 9e92dbdd08 std: use parameter type inference on min and max functions 2016-09-10 20:53:57 -04:00
Andrew Kelley 100990b052 Merge pull request #187 from procedural/c-pointer-fix
Fix for C pointer generator
2016-09-10 13:53:47 -04:00
Constantine Tarasenkov 1cf75db907 Fix for C pointer generator 2016-09-09 23:44:24 +03:00
Andrew Kelley fc9ff13fb6 std: avoid calling close twice in InStream
thanks ofelas for pointing this out
2016-09-08 14:21:42 -04:00
Andrew Kelley d324b1befa ability to infer parameter types 2016-09-08 00:24:48 -04:00
Andrew Kelley de7e88c38f build: remove -Wmissing-prototypes
this causes errors with llvm's own h files which we have no control over.
2016-09-06 11:01:51 -04:00
Andrew Kelley 1a1991371a build: add missing static in tokenizer 2016-09-06 10:58:42 -04:00
Andrew Kelley 9dc9e5bfb0 build: fix warning on gcc 6.2 2016-09-06 10:45:40 -04:00
Andrew Kelley 64034a3d1a maxValue and minValue builtins return number literal
closes #170
2016-09-05 23:19:13 -04:00