Commit Graph

446 Commits (e182274fe7325a7f192bf6c2f3cae6142f3f0656)

Author SHA1 Message Date
Alexander Medvednikov e182274fe7 free memory block 2019-12-11 23:58:51 +03:00
Alexander Medvednikov ad250523cd fix parser.fileis() 2019-12-11 21:42:22 +03:00
Alexander Medvednikov 6ffed854cc cgen.prepend_to_statement() 2019-12-11 20:51:58 +03:00
Alexander Medvednikov 47f9c02331 Revert "cgen.prepend_to_statement()"
This reverts commit 507c71ad80.
2019-12-11 20:37:39 +03:00
Alexander Medvednikov 507c71ad80 cgen.prepend_to_statement() 2019-12-11 19:33:54 +03:00
Alexander Medvednikov 7dcd47369b option to pre-allocate a memory block 2019-12-11 18:41:25 +03:00
Delyan Angelov 13769f440f vweb: continue after bad http client connection; performance fixes
* Enable compiling vweb with -prod (by supressing 'declared and not used' warning about 'reset') .

* Fix http responses (now wrk is happy and shows no errors) by adding a Content-Length header.

* Fix -g compilation for urllib.v .

* vweb: println action= only in debug mode.

* vweb: max request headers counting fix.

* Make vweb.html get a 'ctx mut Context' param, just like the other methods.

* vweb: simplify add_header.

* Use a string builder for the most common html case so that the response http text can be send in one go.

* vweb: reduce _STR/string interpolation usage in the most common html response case.

* vweb: refactor common http response formatting into Context.send_response_to_client/2 method.
2019-12-11 17:32:54 +03:00
Alexander Medvednikov cfeec92826 use -Wunused-function for now 2019-12-11 15:51:12 +03:00
joe-conigliaro 3486118ab7 compiler: force custom struct .str() methods to be defined public 2019-12-11 03:24:26 +03:00
Alexander Medvednikov cdfbb2978d strings: replace_each([]); orm: update 2019-12-10 23:57:49 +03:00
joe-conigliaro 4e69c40e12 parser: fix use blank ident as value 2019-12-10 21:35:59 +03:00
joe-conigliaro 6d5e9f88f8 parser: allow enums to be used as bitfield flags 2019-12-10 06:16:47 +03:00
Alexander Medvednikov 6f49d4c1d2 orm: bool support; vweb fixes 2019-12-09 23:20:29 +03:00
Alexander Medvednikov 8082a5e7f4 fix benchmarking stats 2019-12-09 17:25:56 +03:00
Delyan Angelov f68d9d1a16 live: always add os and time when compiling -live programs
Fixes fail when -live user programs do not use os and time.
2019-12-09 13:48:41 +03:00
Alexander Medvednikov b2207c3d28 do not prepend module to external fn name 2019-12-09 00:24:50 +03:00
Alexander Medvednikov 4ebf53c6e9 allow non snake_case fn names in imported fns 2019-12-08 23:56:31 +03:00
Alexander Medvednikov 8f9b6ac248 '$foo()' string interpolation 2019-12-08 23:18:11 +03:00
Alexander Medvednikov 874ff42687 temporary fix of "v -g v.v" 2019-12-08 20:58:16 +03:00
Alexander Medvednikov 4d1f721558 fix "" string interpolation bug 2019-12-08 20:06:00 +03:00
Alexander Medvednikov 02eee49d25 fix defer_test 2019-12-08 15:30:14 +03:00
Alexander Medvednikov c9886e6f42 use ++ everywhere 2019-12-08 14:34:51 +03:00
Alexander Medvednikov cc682eafe1 require ++ instead of += 1 2019-12-08 14:11:25 +03:00
bogen85 8178e1f7da freestanding: malloc/free with mm_alloc an mm_free
Added more array support that depends on malloc. Added string clone (that uses malloc). Added test for it. Eliminated stack allocated buffers from most of the unit checks.
2019-12-08 13:44:52 +03:00
Alexander Medvednikov 6ec626c5e9 improve invalid character errorrs 2019-12-08 12:57:40 +03:00
Alexander Medvednikov 8b0de95c0a improve the C struct check 2019-12-08 04:23:22 +03:00
Alexander Medvednikov 6ae51b2cbf handle unknown C types 2019-12-08 04:10:56 +03:00
Alexander Medvednikov 7069cd6ab5 a separate scope for x := opt, part 2 2019-12-08 00:45:42 +03:00
Alexander Medvednikov b26a0bde38 a separate scope for x := opt, part 1 2019-12-08 00:34:04 +03:00
Alexander Medvednikov 06a0f39f7b a separate scope for 2019-12-08 00:30:06 +03:00
Alexander Medvednikov dc2da1de98 fix V build 2019-12-08 00:27:24 +03:00
Alexander Medvednikov 8ebc2fe601 do not allow redefinition in `x := opt() {` 2019-12-07 23:09:48 +03:00
Alexander Medvednikov b79588dc69 handle bad value in `if x := opt() {` 2019-12-07 23:05:54 +03:00
Alexander Medvednikov c019dd6f98 test assert in functions that return values 2019-12-07 22:42:20 +03:00
bogen85 751ba48bf5 freestanding improvements (exit, function checks)
Fixed exit for freestanding (as assert now uses it).
Running each function check now in a forked process so they can be killed or return other exit codes (and so each function runs, even if others crash)
2019-12-07 22:25:19 +03:00
Alexander Medvednikov d73586743b fix assert in functions that return values 2019-12-07 19:33:59 +03:00
Alexander Medvednikov b9a24e3b51 Revert "use stdint.h with msvc"
This reverts commit 93529031de.
2019-12-07 19:25:17 +03:00
Alexander Medvednikov 93529031de use stdint.h with msvc 2019-12-07 19:20:53 +03:00
Alexander Medvednikov 63ec3c0486 fix a wrong "0 character in a string literal" error 2019-12-07 18:19:48 +03:00
Alexander Medvednikov 9cba3bdf78 windows: WideCharToMultiByte() returns an int 2019-12-07 17:31:07 +03:00
Alexander Medvednikov ad6adf327e vlib: fix missing `else{}` in match statements 2019-12-07 17:23:37 +03:00
Alexander Medvednikov 2fb7fba856 require `else` in `match` statements 2019-12-07 17:01:44 +03:00
Alexander Medvednikov a594e009f2 test high order function 2019-12-07 16:13:25 +03:00
Alexander Medvednikov f51784ee01 remove unnecessary casts everywhere 2019-12-07 15:51:00 +03:00
Alexander Medvednikov d7ccbba2c9 do not allow casting a type to itself 2019-12-07 15:31:56 +03:00
Alexander Medvednikov cc834dd7a7 parser: `x in []` is always false 2019-12-07 03:05:19 +03:00
Alexander Medvednikov 55f32fc413 more mutability fixes 2019-12-06 19:23:24 +03:00
Alexander Medvednikov e3b5d7fd7c rename if_st to if_statement 2019-12-06 19:21:26 +03:00
Alexander Medvednikov c8d111924d check unused and unmodified vars in all modules, not just main 2019-12-06 18:43:56 +03:00
Alexander Medvednikov aed22a57e3 fixed size array with const length (`[N]int`) 2019-12-06 02:41:03 +03:00