Commit Graph

980 Commits (6ed835ca67670098da79d4e329c6efcb12419599)

Author SHA1 Message Date
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
Andrew Kelley cfaced3f73 rename errName builtin to errorName 2016-09-05 17:03:11 -04:00
Andrew Kelley 768a9780ca rename compileErr builtin to compileError 2016-09-05 17:01:54 -04:00
Andrew Kelley f2a5fe443c README: clarify build vs runtime dependencies 2016-09-05 16:36:21 -04:00
Andrew Kelley e8e2d84689 Merge branch 'llvm-3.9' 2016-09-05 16:19:20 -04:00
Andrew Kelley 4979e606c3 fix gcc 5.4.0compile errors 2016-09-05 16:18:49 -04:00
Andrew Kelley a31eb977b4 Merge pull request #186 from winksaville/master
Fix email address of Email list
2016-09-05 15:07:56 -04:00
Wink Saville 92cebdb926 Fix email address of Email list 2016-09-05 12:03:32 -07:00
Andrew Kelley d2a6c2b260 Merge pull request #185 from winksaville/master
Add Email list
2016-09-05 14:05:22 -04:00
Wink Saville 5068716a9a Add Email list 2016-09-05 10:44:48 -07:00
Andrew Kelley 20eb749ad6 generate debug info for global constants
See #41
2016-09-04 22:32:23 -07:00
Andrew Kelley 4e7effd3d3 port to llvm 3.9 2016-09-04 18:30:40 -07:00
Andrew Kelley f18e34c2c6 restore shared library functionality 2016-09-01 11:05:36 -07:00
Andrew Kelley 320e26590a fix std io input to work for non seekable fds 2016-08-31 20:23:47 -07:00
Andrew Kelley 289bfa890b fix c hello world example 2016-08-30 20:48:30 -07:00
Andrew Kelley 9193a3cdad stronger static eval recursive test 2016-08-30 16:06:02 -07:00
Andrew Kelley d44ca5baac tokenizer: add missing return statement on float overflow
closes #177
2016-08-29 22:20:12 -07:00
Andrew Kelley 6e6d138c2f add ability to explicitly cast enum with no payload to int 2016-08-29 22:14:10 -07:00
Andrew Kelley 651dc31247 implement null as a literal type 2016-08-29 22:14:09 -07:00
Andrew Kelley 1f7ec741fa implement `?return` expression 2016-08-29 22:14:09 -07:00
Andrew Kelley 6149f73189 std: more progress toward stack printing 2016-08-29 22:13:59 -07:00
Andrew Kelley ed50bd1b65 progress toward stack trace printing 2016-08-17 20:11:04 -07:00
Andrew Kelley 0fbb9e09ea fix crash when calling method on slice 2016-08-16 23:24:33 -07:00
Andrew Kelley a2ac06dcd5 std: replace print_u64/i64 with printInt 2016-08-16 22:59:32 -07:00
Andrew Kelley 37d167f6e0 std: conform to style guidelines 2016-08-16 22:42:50 -07:00
Andrew Kelley 0ae9023832 add CBuf to standard library
and fix ability to take address of variables
from other namespaces
2016-08-11 22:25:13 -07:00
Andrew Kelley 0a482bbbfe add style guide 2016-08-11 21:13:02 -07:00
Andrew Kelley 2ed949a6ae add zeroes value 2016-08-08 20:43:38 -07:00
Andrew Kelley 0d5ecc4312 ability to have a return type of 'type' 2016-08-07 20:08:37 -07:00
Andrew Kelley 275410dc33 implement multiline C string syntax 2016-08-04 23:10:24 -07:00
Andrew Kelley d0b11af2bd new multiline string syntax
This patch also moves a bunch of the parser code into the tokenizer.

Closes #162.
2016-08-04 22:52:38 -07:00
Andrew Kelley 0450b73e3e std: add tests for mt32 and mt64 2016-07-28 20:14:57 -07:00
Andrew Kelley 711e3d71b9 std: add vaporware plans for floating point builtins 2016-07-27 23:46:20 -07:00
Andrew Kelley 1fa0cabf9d remove multiline comments
closes #161
2016-07-27 23:26:12 -07:00
Andrew Kelley 8552d7fd19 explicit wrapping integer operations
instead of wrapping integer types

closes #159
2016-07-27 23:08:27 -07:00
Andrew Kelley 3eb5afd245 std: cleanup of rand 2016-07-27 19:52:38 -07:00
Andrew Kelley 06c4b35eb1 std: improve rand implementation and API 2016-07-26 23:51:58 -07:00
Andrew Kelley bc81ddfea6 unsigned integers for sizes of things
Closes #62.
2016-07-26 20:40:11 -07:00
Andrew Kelley 76f87cdd96 std: add OutStream.write_byte 2016-07-26 18:13:22 -07:00
Andrew Kelley 78d4fb20c4 inline parameters
This replaces the current generic syntax for functions and replaces
it with the concept of inline parameters.

This paves the way for the "all structs anonymous" proposal.

Closes #151.
2016-07-25 22:55:15 -07:00
Andrew Kelley 425c0ffa01 rename NodeTypeStructDecl to NodeTypeContainerDecl 2016-07-17 16:30:41 -07:00
Andrew Kelley 3971bf3d72 fix not resolving use declarations
causing bogus compile errors
2016-07-13 18:22:49 -07:00
Andrew Kelley f2fc9b8a7b fix duplicate type defined when imported from parseh 2016-07-09 15:48:25 -07:00
Andrew Kelley 49a4b1b930 ability to cast explicitly from int to enum
This commit also fixes a bug where pure functions are marked with
the read-only attribute in debug mode. This resulted in incorrect
codegen because calls to read-only functions with unused values
were not generated.

For example, a call to assert() would not be generated if assert
is marked with read-only. Which it *is* marked with in release
mode.
2016-07-09 15:22:04 -07:00