Andreas Rumpf
8ba7e7d807
toy program works with incremental compilation
2018-06-07 18:24:16 +02:00
Yuriy Glukhov
60b9c9dc1f
Fixes #7985
2018-06-07 19:14:14 +03:00
Yuriy Glukhov
29a01da90f
Fixes #7982
2018-06-07 17:17:07 +03:00
Emery Hemingway
22f714585b
Native access to Genode environment
...
Add a 'GenodeEnv' type and a 'componentConstructHook' to the system
module. The 'componentConstructHook' allows for detection of POSIX style
programs that exit implicitly or native Genode components that
initialize to serve RPC requests and OS signals.
This hook takes a 'GenodeEnv' argument so that the environment interface
is passed cleanly to application code after globals are initialized.
This is an typed pointer to a C++ object, procedures for accessing the
environment will be available from a Nimble library and not included in
the standard library.
The standard library has an internal pointer to the environment object
but this is not for external use, the undocumented global environment
pointer has been removed.
2018-06-07 07:21:20 +02:00
cooldome
e03b3bdde7
fixes 7980
2018-06-06 23:41:19 +01:00
Yuriy Glukhov
fef60716bf
Fixed yield in nkBlockExpr
2018-06-07 00:15:46 +03:00
Andreas Rumpf
bf394ed1a1
Merge pull request #7550 from jangko/fix4799
...
fixes #4799 , varargs now can accept polymorphic types
2018-06-06 22:04:54 +02:00
Yuriy Glukhov
0ec2b33c50
Fixed yield in dotExpr and nkOfBranch lowering. Closes #7969 .
2018-06-06 16:35:40 +03:00
Andreas Rumpf
e957d369b1
Merge pull request #7907 from GULPF/lexer-unicode-fix
...
Lexer fix for multi byte characters
2018-06-06 11:42:59 +02:00
Andreas Rumpf
1593b9cac4
Merge pull request #7967 from nitely/empty_openarray_7904
...
support empty toOpenArray
2018-06-06 11:06:57 +02:00
nitely
ba39f359aa
check bounds instead of index
2018-06-05 20:22:27 -03:00
Yuriy Glukhov
44589e9ca8
Cosmetics
2018-06-05 22:47:07 +03:00
Andreas Rumpf
3cbc07ac78
Merge pull request #7770 from yglukhov/yield-in-try
...
Yield in try
2018-06-05 19:58:00 +02:00
andri lim
80107b360c
add more test to 4799
2018-06-05 09:18:20 +07:00
andri lim
069a53ad4b
fixes #7906 , array and openarray arg vs. ptr/ref generic ( #7909 )
...
* fixes #7906 , array and openarray arg vs. ptr/ref generic
* add comment
2018-06-04 17:43:15 +02:00
Andreas Rumpf
12996c08a1
fixed merge conflict
2018-06-04 16:16:50 +02:00
Oscar Nihlgård
440212a154
Fix for newStringOfCap in VM ( #7901 )
2018-06-04 13:38:26 +02:00
WhiteDuke
59ba1e77af
Wait until the end to print hint Conf ( #7931 )
2018-06-04 13:31:22 +02:00
Andreas Rumpf
2e9d486378
wip
2018-06-04 11:59:02 +02:00
Andreas Rumpf
268260953c
completed VM support for incremental compilations
2018-06-04 01:01:08 +02:00
Andreas Rumpf
b5194f592c
WIP: an API for VM replay global state support
2018-06-03 20:18:43 +02:00
Andreas Rumpf
9ab92824f6
AST change: keep nkStaticStmt in the AST for incremental compilation support
2018-06-03 20:16:29 +02:00
Andreas Rumpf
1ed7751dac
added btrees.contains
2018-06-03 20:15:37 +02:00
Andreas Rumpf
9d27079606
support iteration over BTrees for the compilation cache
2018-06-03 12:37:03 +02:00
Oscar Nihlgård
fd28236368
Multi byte characters should not be treated as part of an operator
2018-06-03 09:05:50 +02:00
Andreas Rumpf
826c1e2d78
incremental compilation: implemented basic replay logic
2018-06-02 09:41:27 +02:00
Andreas Rumpf
cae1973856
document how the incremental compilation scheme could work
2018-06-01 22:11:32 +02:00
Oscar Nihlgård
eb8f15d97c
Support multi byte characters in module names ( #7916 )
2018-05-31 10:38:43 +03:00
Andreas Rumpf
61fb83ecbb
baby steps for incremental compilation
2018-05-30 23:50:34 +02:00
Andreas Rumpf
a36c779f39
incremental compilation subsystem compiles again
2018-05-30 20:27:41 +02:00
Andreas Rumpf
31d9df9e75
runnableExamples: use the self exe to test the examples
2018-05-30 11:34:03 +02:00
Andreas Rumpf
ddc6cec69e
refactoring: move DB model to incremental.nim
2018-05-30 10:15:41 +02:00
andri lim
25a41d5d90
fixes #7818 , correct internal representation of generic objects array construction ( #7824 )
...
* defer skiptypes
* defer skiptypes for tyRef & tyPtr
* remove unneeded skipTypes
2018-05-29 09:38:52 +02:00
Andreas Rumpf
688c54d8f1
compiler API: final cleanups; improve security by diabling 'gorge' and friends
2018-05-29 09:07:24 +02:00
Andreas Rumpf
a5701d6b71
ensure compiler API doesn't import the RST engine
2018-05-29 08:22:09 +02:00
Andreas Rumpf
06122ff711
rewrote nimeval.nim; added tcompilerapi example to show how the compiler can be used as an API
2018-05-29 01:18:50 +02:00
Andreas Rumpf
ae1f6895fa
active.nim: fixes the import path so that compilation with --noNimblePath works
2018-05-29 00:55:31 +02:00
Andreas Rumpf
b92fcacb99
more compiler API cleanups
2018-05-28 23:48:25 +02:00
Andreas Rumpf
5ad1acc60c
remove the last global variables in the C code generator
2018-05-28 18:18:43 +02:00
Andreas Rumpf
e5281f9356
rename 'nimrodVM' to 'nimVM'
2018-05-28 18:01:56 +02:00
Andreas Rumpf
382bc34f93
vm now free of global variables
2018-05-28 14:41:49 +02:00
Andreas Rumpf
5d45e630c5
vm.nim: evalMacroCounter is not a global variable anymore
2018-05-28 13:57:16 +02:00
Andreas Rumpf
db4bcd80e5
jsgen refactoring: use graph.backend field instead of a global variable
2018-05-28 12:24:18 +02:00
Andreas Rumpf
006ee79a91
make dependency analyser free of global variables
2018-05-28 00:04:55 +02:00
Andreas Rumpf
73799903ee
removed global variable from rstgen.nim
2018-05-27 23:38:49 +02:00
Andreas Rumpf
c640bd2d1b
cleanup compiler/prettybase to not use redudant global variables
2018-05-27 22:52:10 +02:00
Andreas Rumpf
545b1582cd
refactoring: make projectMainIdx typesafe
2018-05-27 22:30:36 +02:00
Andreas Rumpf
40ec7be45c
refactoring: remove idents.legacy global variable and pass the IdentCache around explicitly
2018-05-27 22:09:15 +02:00
Andreas Rumpf
a325692fb2
refactoring: fewer global variables
2018-05-27 19:19:12 +02:00
Andreas Rumpf
18a3833d60
more refactoring
2018-05-27 15:22:17 +02:00