Commit Graph

21686 Commits

Author SHA1 Message Date
Konstantin Molchanov
6a583b6d2f Merge branch 'fix_time_offset_in_times_js' into improve-times-for-js 2017-03-27 21:48:39 +04:00
Konstantin Molchanov
9a67d0c1e4 Resolve conflic. 2017-03-27 21:46:43 +04:00
Konstantin Molchanov
2351d5d314 Merge branch 'calculate_yearday_in_timeinfo_js' into fix_time_offset_in_times_js 2017-03-27 21:38:19 +04:00
Konstantin Molchanov
bf654563b1 Merge branch 'improve-times-for-js' into fix_time_offset_in_times_js 2017-03-27 21:32:25 +04:00
Konstantin Molchanov
41e83f7a34 Tests: Times: JS: Fix test. 2017-03-27 21:28:31 +04:00
Konstantin Molchanov
1a5e880f5a Tests: Times: JS: Add test for yearday attribute. 2017-03-27 21:14:02 +04:00
Andreas Rumpf
159643824b fixes #3847 (#5609) 2017-03-27 09:39:46 +02:00
Konstantin Molchanov
bef86f55ce Times: JS: Add yearday to TimeInfo.
Add yearday calculation to getLocalTime and getGMTime, so that yearday is not 0 for TimeInfo instances under JS backend.

Yearday 0 has no sense and contradicts the behaviour under C backend, where yearday is an int from 1 to 365, i.e. cannot be 0 even theoretically.
2017-03-27 00:14:48 +04:00
Konstantin Molchanov
3ebffb2a00 Times: JS: Remove implicit UTC convesion.
The conversion would produce incorrect timestamp.
2017-03-26 23:50:02 +04:00
Andreas Rumpf
d02486aa48 compiler: better error messages (#5613) 2017-03-26 20:24:06 +02:00
Fredrik Høisæther Rasch
3d21e2ab66 Added documentation and explanatory comments to vccexe 2017-03-26 17:14:02 +02:00
pgkos
481d8ba24a Fix segfault in db_mysql fastRows (#5605) 2017-03-26 09:42:15 +02:00
Andreas Rumpf
1268ca79e5 fixes #5599 (#5610) 2017-03-26 09:30:59 +02:00
Arne Döring
21b03257ef update linenoise (#5357) 2017-03-25 09:28:26 +01:00
Konstantin Molchanov
80ffae62fb JS: Times: Add timezone prop to TimeInfo. (#5581) 2017-03-25 09:26:34 +01:00
Zahary Karadjov
b32576a59c fix a typo 2017-03-24 17:31:12 +02:00
Zahary Karadjov
78ca4f6be4 close #3330 2017-03-24 17:07:30 +02:00
Zahary Karadjov
bec7f9398f close #2882 2017-03-24 17:07:30 +02:00
Zahary Karadjov
189d28672c close #2423 2017-03-24 17:07:30 +02:00
Zahary Karadjov
d16557bbdb close #2018 2017-03-24 17:07:30 +02:00
Zahary Karadjov
f8c921dd25 close #1991 2017-03-24 17:07:30 +02:00
Zahary Karadjov
52377740b6 close #1570 2017-03-24 17:07:30 +02:00
Zahary Karadjov
e31575c27a close #1147 2017-03-24 17:07:30 +02:00
Zahary Karadjov
905a22d137 close #1128 2017-03-24 17:07:30 +02:00
Zahary Karadjov
79881bfce0 close #976 2017-03-24 17:07:30 +02:00
Zahary Karadjov
e3500ba458 Make tgc_unsafe2 green again
apparently, the error reporting code introduced for concepts results
in a slightly diffent output for this test case.
2017-03-24 17:07:30 +02:00
Zahary Karadjov
7fdf29937d fix tgenericshardcases 2017-03-24 17:07:30 +02:00
Zahary Karadjov
9574d318ae use lower-case proc names 2017-03-24 17:03:55 +02:00
Zahary Karadjov
c605d57574 restore compilation and make all concepts tests green 2017-03-24 17:03:55 +02:00
Zahary Karadjov
d6d548c32f carefully reviewed and merged the changes from the devel branch 2017-03-24 17:03:55 +02:00
Zahary Karadjov
cbf66e99a8 Working test cases for the sophisticated matrix library example from the manual
Fixed the dot operator when used within return types (see tgenericdotrettype)
Fixed the matching of generic concepts aliases used with the implicit generics style
2017-03-24 16:59:47 +02:00
Zahary Karadjov
52b241fd57 new type traits: GenericHead and StripGenericParams 2017-03-24 16:59:47 +02:00
Zahary Karadjov
fe48dd1cbe further improvements to the error messages produced by concepts 2017-03-24 16:59:47 +02:00
Zahary Karadjov
9e9b289fc5 when displaying proc signatures, don't render the implicit generic params 2017-03-24 16:59:47 +02:00
Zahary Karadjov
74a80988d9 proper error reporting for concepts and the introduction of the {.explain.} pragma 2017-03-24 16:59:47 +02:00
Zahary Karadjov
644d645ea7 implement the special treatment of explicit type params in concepts 2017-03-24 16:58:15 +02:00
Zahary Karadjov
0f2c4be129 infer static parameters even when more complicated arithmetic is involved 2017-03-24 16:58:15 +02:00
Zahary Karadjov
0b0a3e5f20 support derived values in non-generic user type classes 2017-03-24 16:58:15 +02:00
Zahary Karadjov
77a4512ae8 some revisions to the Concepts and VTable types specs 2017-03-24 16:58:15 +02:00
Zahary Karadjov
a90c4c4d7e kill the reportConceptFailures options as it will be replaced by the .explain. pragma 2017-03-24 16:58:15 +02:00
Zahary Karadjov
19918ad96f future manual additions for the full concept spec I'm aiming to implement 2017-03-24 16:58:15 +02:00
Zahary Karadjov
76c663f692 support for inferring static[T] concept params 2017-03-24 16:58:15 +02:00
Zahary Karadjov
8cd5f1f8f5 introduce tyInferred for the unbound concept type params
* Why is tyInferred needed?

The bindings in TCandidate are capable of inferring types within a single
call expression. In concepts, we need to infer types in the same way, but
across the whole body of the concept.

Previously, once a concept type param was inferred, it was destructively
mutated using t.assignType, but this proved to be problematic in the presence
of overloads, because the bindings established while a non-matching overload
is tested must be reverted/forgotten. tyInferred offers a non-destructive way to
keep track of the inference progress.

While introducing new types usually requires a lot of code paths in the compiler
to updated, currently tyInferred is only a short-lived type within the concept body
pass and it's unlikely to introduce breakage elsewhere in the compiler.
2017-03-24 16:58:15 +02:00
Zahary Karadjov
815724db71 support the full range of type modifiers when declaring concept vars and testing proc signatures 2017-03-24 16:58:15 +02:00
Zahary Karadjov
0a9a878bd3 support for matching generic types' procs in generic concepts 2017-03-24 16:58:15 +02:00
Zahary Karadjov
33f4e69759 support for accessing types and consts defined in concepts with the dot operator 2017-03-24 16:58:15 +02:00
Zahary Karadjov
eab1d0cc02 support for accessing the inferred concept type params with the dot operator 2017-03-24 16:58:15 +02:00
Zahary Karadjov
66e0f0e19c concept type params inference working in basic examples 2017-03-24 16:58:15 +02:00
Andreas Rumpf
0d8a503e45 fixes #5597; wrong eager template instantiation in generic context (#5601) 2017-03-24 07:35:12 +01:00
Dmitriy Fomichev
268a1f7cfd Deques compilation error fix (#5591) 2017-03-24 00:09:51 +01:00