Timothee Cour
e70294dff2
enable testing -d:nimHasLibFFI mode ( #13091 )
2020-02-04 14:08:56 +01:00
Timothee Cour
4a747f0250
CT FFI: fix for windows; fix case transition; error msg shows more useful context ( #13292 )
...
* evalffi: fix case transition
* evalffi: fix for windows
* evallffi: `cannot import` errmsg now also shows which library it tried to import symbol from
2020-01-30 11:04:06 +01:00
Timothee Cour
3f78873898
remove all remaining warnings when build nim (with -d:nimHasLibFFI) ( #13084 )
...
* cleanup deprecations in evalffi + elsewhere
* remove dead code getOrdValue64
2020-01-09 13:19:18 +01:00
Timothee Cour
13c08f3ab4
VM: support importc var, ptr/pointer types, cast int <=> ptr/pointer ( #12877 )
...
* VM: allow certain hardcoded special var variables at CT
* VM: allow all importc var, cast[int](ptr)
* fix tests tests/vm/tstaticprintseq.nim, tests/cpp/t8241.nim
* VM: == works for ptr/pointer nodes
* bugfix: ==, cast now also works for pointer, not just ptr
* VM supports cast PtrLikeKinds <=> PtrLikeKinds / int
* improve cname handling
* fixup + bug fix
* VM: support cast from ref to int
* address comment: opcLdGlobalDeref => opcLdGlobalDerefFFI
* defensive check against typ == nil
2020-01-05 09:11:29 +01:00
Clyybber
7e747d11c6
Cosmetic compiler cleanup ( #12718 )
...
* Cleanup compiler code base
* Unify add calls
* Unify len invocations
* Unify range operators
* Fix oversight
* Remove {.procvar.} pragma
* initCandidate -> newCandidate where reasonable
* Unify safeLen calls
2019-11-28 17:13:04 +01:00
Solitude
160c07be00
Fix code style errors ( #12545 )
2019-10-28 15:21:10 +01:00
Clyybber
ed1d41c51e
Small ast.nim cleanup ( #12156 )
...
* Remove sonsLen
* Use Indexable
2019-09-09 11:54:15 +02:00
Timothee Cour
2b2efe3dbe
fix compiletimeFFI ( #11991 )
2019-08-21 09:28:16 +02:00
Arne Döring
b92fd30282
rename tyExpr/tyStmt to tyUntyped/tyTyped ( #11227 )
2019-05-11 10:11:08 +02:00
Clyybber
f18b3af9d4
Replace countup(x, y-1) with x ..< y
2019-05-07 12:32:05 +02:00
Timothee Cour
adbabf145c
FFI at CT ( #10150 )
...
* enable FFI at CT
* rename useFFI=>nimHasLibFFI; improve formatting rawExecute traceCode
* disable libffi on windows (works for win32, not yet win64)
2019-02-23 11:31:01 +01:00
Araq
2a7fc84c86
remove ast.emptyNode global; cleanup configuration.nim
2018-05-16 03:06:07 +02:00
Andreas Rumpf
47335aab41
introduce nkTupleConstr AST node for unary tuple construction; breaking change
2018-04-13 17:45:58 +02:00
Andreas Rumpf
e4081a7201
preparations for language extensions: 'sink' and 'lent' types
2018-01-07 23:09:26 +01:00
Andreas Rumpf
70ea45cdba
deprecated unary '<'
2017-10-29 08:37:13 +01:00
Arne Döring
000b8afd26
Remove expr/stmt ( #5857 )
2017-07-25 09:28:23 +02:00
Araq
e6c5622aa7
removed tyArrayConstr completely from the compiler; introduced tyAlias instead in preparation for further bugfixes
2016-11-14 23:18:30 +01:00
def
4e0f8cf595
Use ByteAddress instead of deprecated TAddress
2016-01-24 14:02:20 +01:00
Araq
22fc9a9470
development version is 0.12.1, not 0.12.0
2015-10-29 23:33:27 +01:00
Araq
08c0ba379a
fixes #1805
2015-03-21 20:38:28 +01:00
Max Zerzouri
7527da7043
.n.isNil checks for tyTuple PTypes.
2015-03-07 17:56:29 +13:00
Guillaume Gelin
3119fe087d
Happy new year!
2015-01-06 15:26:33 +01:00
Araq
2781fea9e2
Nimrod renamed to Nim
2014-08-28 09:38:14 +02:00
Araq
4196757de7
implemented region pointers
2014-04-09 00:33:51 +02:00
Araq
2fc84325c7
should fix the nkExprColonExpr bug in the vm
2014-03-13 02:52:40 +01:00
Araq
68d8cd1301
case consistency for evalffi
2014-02-01 23:56:32 +01:00
Zahary Karadjov
afddae5aaf
Merge branch 'upstream' into devel
...
Conflicts:
compiler/ccgutils.nim
compiler/msgs.nim
compiler/sem.nim
compiler/semexprs.nim
compiler/seminst.nim
compiler/semmagic.nim
compiler/semstmts.nim
compiler/semtypes.nim
compiler/semtypinst.nim
compiler/sigmatch.nim
compiler/types.nim
compiler/vmgen.nim
lib/core/macros.nim
lib/system.nim
tests/reject/tenummix.nim
web/news.txt
2013-12-29 17:21:00 +02:00
Araq
32ef1f8f32
vm: FFI improvements
2013-12-23 20:12:13 +01:00
Araq
9145bcfbb6
new VM: some progress for the FFI support
2013-12-23 01:17:48 +01:00
Zahary Karadjov
027f30610e
static params: expr[T] is now static[T]
...
This introduces tyStatic and successfully bootstraps and handles
few simple test cases. Static params within macros are no longer
treated as PNimrodNodes - they are now equivalent to constants
of the designated type.
2013-12-19 01:06:38 +02:00
Araq
9035d15ed2
next steps for FFI support
2013-11-25 13:04:11 +01:00
Araq
225d657019
first steps to implement object construction expressions
2013-03-07 01:52:17 +01:00
Araq
43b6daf2d6
FFI at compiletime improvements
2013-01-08 01:19:02 +01:00
Araq
88a441ea8e
next steps for FFI at compile time
2013-01-02 01:17:53 +01:00
Araq
9ef367db62
fixed a newly introduced c2nim bug; many untested improvements to the FFI at compile time
2012-12-31 17:53:37 +01:00
Araq
7d24a43e61
better errors for FFI
2012-12-27 00:15:04 +01:00
Araq
81b718641c
small improvements for FFI
2012-12-26 22:48:34 +01:00
Araq
b6c8e16b0f
bugfix: openssl import for macosx
2012-12-19 21:45:18 +01:00
Araq
c73d9fdd4c
small examples work with the FFI
2012-12-19 08:44:20 +01:00
Araq
7148812524
first steps for FFI support at compile time
2012-12-19 02:22:39 +01:00