Clay Sweetser
6608fcc60f
Update 'isCastable' and 'semCast' doc-comments
2014-05-26 10:12:46 -04:00
Araq
030eac86c0
bugfix: regionized pointers in a generic context; renamed 'Future' to 'Promise'
2014-05-25 15:19:46 +02:00
Clay Sweetser
055cdb2cdf
Renamed 'considerAcc' to 'considerAccents' for clarity
...
Added documentation string to 'considerAccents'
Modified renderParamType's assertion to allow nkAcc nodes.
2014-05-24 08:10:40 -04:00
Araq
d2dbcf2fa4
progress with futures
2014-05-23 08:57:16 +02:00
Araq
c43e8df90c
progress for the 'parallel' statement
2014-05-14 01:51:44 +02:00
Araq
bd705a517f
compiler prepared for the new comment handling
2014-04-30 00:53:44 +02:00
Araq
8e08ff559f
first version of 'spawn'
2014-04-16 08:44:57 +02:00
Araq
4196757de7
implemented region pointers
2014-04-09 00:33:51 +02:00
Zahary Karadjov
f6f5c9e9e6
propagate semExpr flags in macro/template expansion
2014-04-06 16:55:28 +03:00
Araq
dc2b21e9b2
tsymchoicefield compiles
2014-04-01 08:21:08 +02:00
Araq
78cc4de9a1
fixes #1025 ; don't know what this breaks
2014-03-26 20:31:18 +01:00
Araq
cdb4d83ead
implemented 'borrow dot' feature for distinct types
2014-03-26 01:27:22 +01:00
Zahary Karadjov
09bda74e7d
fix #1015
2014-03-20 23:45:31 +02:00
Zahary Karadjov
4b7655fd10
reference implementation of a vector swizzle library
...
This also provides the initial steps towards support for type class "filtered" type inference
fixes an "ordinal type expected" ICE, related to the use of static params
2014-03-20 01:16:50 +02:00
Audun Wilhelmsen
1e45bb79ab
Added support for {.packed.} pragma on objects
...
Added tests for packed and union pragmas
2014-03-18 21:11:57 +01:00
Zahary Karadjov
49b0440c47
make some tests green
2014-03-16 20:42:49 +02:00
Zahary Karadjov
f0953db3ba
handle arbitrary expressions dependent on static input params in proc signatures
2014-03-16 20:42:06 +02:00
Zahary Karadjov
ac271e76b1
more robust handling of proc signatures containing inter-param type references
2014-03-16 20:42:06 +02:00
Zahary Karadjov
37b199d34a
first phase of tyGenericParam reforms needed for static params
2014-03-16 20:42:06 +02:00
Zahary Karadjov
cf8fe16a48
fix #715 again
...
the regression was caused by the introduction of "generic" lambdas
2014-03-16 20:42:06 +02:00
Zahary Karadjov
85fe5e1940
fix #988
...
trivial crash caused due to unchecked iteration over an empty reclist
2014-03-10 13:04:22 +02:00
Zahary Karadjov
d5798b43de
fix #986
2014-03-10 01:57:08 +02:00
Zahary Karadjov
29b7104a53
fix #829 ; (macros.quote)
...
the fix is a little bit peculiar:
the inserted call to getAst was getting a false-positive for being a lambda proc,
because lambdalifting.isInnerProc takes into account who is the owner of a given
symbol: (a nested proc is a callable symbol owned by the enclosing proc)
2014-03-09 21:04:12 +02:00
Zahary Karadjov
752352a683
fix #949
2014-03-09 20:47:05 +02:00
Zahary Karadjov
085b339b8b
implements higher-order inline iterators and return type inference for iterators
2014-03-08 22:57:06 +02:00
Zahary Karadjov
249dd70273
test cases for the new handling of iterators by the is operator
2014-03-06 23:03:02 +02:00
Zahary Karadjov
862c0ef83d
split the inline and closure iterators into different symbol kinds for easier discrimination between them
2014-03-06 21:57:35 +02:00
Zahary Karadjov
5324c9ebba
iterators now return tyIter(T);
...
tyIter(T) represents an "iteration yielding values of type T"
I'm planning to use that in the context of the `is` operator
supporting predicates such as `C.items is iterator` and also
in the upcoming support for higher-order inline iterators.
2014-03-05 02:23:53 +02:00
Araq
0c31686fec
new VM is getting stable
2014-02-24 01:30:40 +01:00
Zahary Karadjov
9dd753f218
quite messy implementation of generic lambdas, needs reworking; fixes #715
2014-02-17 03:03:17 +02:00
Zahary Karadjov
c1f1f84194
fix some regressions caused by tyTypeDesc[tyNone]
2014-02-15 20:44:01 +02:00
Zahary Karadjov
492fa86638
the delegator pragma becomes a set of dot operators
2014-02-15 17:41:35 +02:00
Zahary Karadjov
a158053ae9
fixes #797 ; generic procs can be used in places expecting matching concrete proc types
2014-02-11 01:14:57 +02:00
Araq
dbc8aa60e3
fixes 'newSeq[T]' instantiation bug
2014-02-09 00:41:53 +01:00
Araq
47e4f9698c
fixes #844
2014-02-02 10:00:10 +01:00
Araq
efcbaa965e
remove the old tester
2014-02-02 00:45:47 +01:00
Araq
d8d93218fa
bugfix: object constructor doesn't allow 'distinct' types
2014-02-01 11:56:21 +01:00
Zahary Karadjov
5a6030a16b
the is operator now uses exactly the same algorithm as proc signature matching
2014-01-26 00:45:50 +02:00
Zahary Karadjov
3f71b7f1f6
implements #766 ;
...
expressions such as Type.field are now recognised by the compiler.
This also fixes a bug, preventing the user-defined to check for the presence of
regular fields in addition to procs
2014-01-24 23:52:52 +02:00
Zahary Karadjov
a6a18be089
support for parametric user-defined type classes
2014-01-24 14:13:32 +02:00
Araq
73c6efdf66
'nil' as a statement is deprecated, use an empty 'discard' instead
2014-01-19 16:54:59 +01:00
Araq
fc452787e7
better html generator for the tester; fixes some VM bugs
2014-01-17 01:18:57 +01:00
Zahary Karadjov
1ffae7cbaf
progress towards fixing tgenericshardcases
2014-01-06 00:15:55 +02:00
Zahary Karadjov
8f3d5a25a6
Templates will pick the candidate in the nearest scope when symbols are mixed-in
2013-12-31 04:04:59 +02:00
Zahary Karadjov
fa3bb8d66b
restore return type inference
2013-12-30 00:03:57 +02: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
b731e6ef1c
case consistency: cs:partial bootstraps on windows
2013-12-29 03:19:10 +01:00
Araq
438703f59e
case consistency: next steps
2013-12-29 01:13:51 +01:00
Zahary Karadjov
66a2556525
make more tests green
2013-12-29 00:00:37 +02:00
Araq
92b8fac94a
case consistency part 4
2013-12-27 23:10:36 +01:00