Commit Graph

282 Commits (d69bac556543ef2247b26524b780a2fb5627b23d)

Author SHA1 Message Date
Alexander Medvednikov edbcefb811 fix and simplify VROOT 2019-07-15 23:33:31 +02:00
Alexander Medvednikov 840e496a51 force snake_case in variable names 2019-07-15 22:53:33 +02:00
Alexander Medvednikov 100bcc2034 use defer 2019-07-15 22:18:43 +02:00
Alexander Medvednikov 17c6ba04a2 defer statement 2019-07-15 22:13:12 +02:00
Alexander Medvednikov 62e6e03492 -ldl is only required on Linux 2019-07-15 20:40:37 +02:00
Alexander Medvednikov 9b020fad53 fix OpenBSD build 2019-07-15 20:22:48 +02:00
Alexander Medvednikov 374781da1a OpenBSD, NetBSD, DragonFly support 2019-07-15 20:19:07 +02:00
Alexander Medvednikov 449fd372f9 *_nix.v support 2019-07-15 19:23:09 +02:00
Alexander Medvednikov b36a9f7e55 glfw always on top 2019-07-15 19:23:09 +02:00
Delyan Angelov 37aff9b107 hot reload: no -sanitize is needed anymore, -live is now enough on both Linux and MacOS X
* hot reload for GL programs: force the main executable (the shared library loader) to be build with -rdynamic flag, when -live is passed to v compiler.

* hot reload: optimize away a redundant load_so/0 call at the start of the reload_so thread.

* hot code reload for MacOSX requires -flat_namespace flag instead of -rdynamic (on linux).
2019-07-15 17:32:00 +02:00
Alexander Medvednikov 7c6f59afa6 FreeBSD support 2019-07-15 17:24:44 +02:00
d2verb 4020a3ab8c Prevent main function form returning value 2019-07-15 17:19:24 +02:00
d2verb 40ad868f22 Fix #1107 2019-07-15 16:30:06 +02:00
Henrixounez 48c06df5f5 parser: fix bug not printing percentages 2019-07-15 14:26:39 +02:00
d2verb 916b13b286 fix maps 2019-07-15 12:33:18 +02:00
Delyan Angelov 0556f5fd4e When compiling with -shared (a step in compiling with -live), store the C intermediary file in a different file than main (loader) file, so that debugging symbol lookup information is correct (the files are not replaced constantly with each other). 2019-07-15 12:30:03 +02:00
Delyan Angelov 60ad97c4fb fix hot code reloading for GUI example bounce on linux: works when compiled with 'v -live -sanitize bounce.v' .
It crashes with SIGSEGV, when -sanitize is not given.
Also thirdparty/glad/glad.o should be build with -fPIC .
2019-07-15 12:28:35 +02:00
Alexander Medvednikov f7dbbf5810 re-write map.v and update the compiler 2019-07-14 22:08:17 +02:00
hazohelet 441281dd4f parser: fix small typo 2019-07-14 16:48:57 +02:00
Alexander Medvednikov 48f841bb26 make enums defined in other modules work 2019-07-14 00:10:53 +02:00
joe-conigliaro b4afa964fc hash/crc32 2019-07-13 15:11:32 +02:00
Nick Treleaven cec3ea5b4d Document `v -lib` and don't advertise `--help` long option
--help and --version are accepted, but these don't fit the `-option`
format of V's other options. To avoid confusion, don't mention them.
2019-07-13 14:54:31 +02:00
d2verb 2811145437 Add enum_test.v 2019-07-13 12:19:57 +02:00
joe-conigliaro 298ca8676f Change import syntax to "import as alias" 2019-07-13 12:15:16 +02:00
aguspiza d0e7d0070d fix travis windows user home 2019-07-12 20:35:01 +02:00
hazohelet 2a0d8072c1 delete unnecessary lines 2019-07-12 15:46:15 +02:00
joe-conigliaro 9a957ccc18 module aliasing & file import scope 2019-07-12 07:37:54 +02:00
Alexander Medvednikov 56b7c9e35f for key, val in map syntax 2019-07-12 07:27:30 +02:00
hazohelet b039538a27 parser: fix if expressions with multiple else if's 2019-07-12 06:54:01 +02:00
Alexander Medvednikov 5b3295db94 remove # from gg and glm 2019-07-12 06:50:25 +02:00
hazohelet e15c2da1f4 enable else-if expression 2019-07-12 06:04:37 +02:00
Alexander Medvednikov 22b41c7873 V 0.1.14 2019-07-12 05:23:00 +02:00
hazohelet 560ba55572 enable consts with operators in scripts 2019-07-12 04:53:51 +02:00
Alexander Medvednikov f834644db4 make gg work on Windows; prebuild glad and cJSON; new ft module 2019-07-12 04:50:14 +02:00
Alexander Medvednikov da51fea605 fix disappearing printf when compiling with 2019-07-10 22:07:56 +02:00
Alexander Medvednikov 4a8ba9756f disable u32 check for now 2019-07-10 22:05:50 +02:00
Alexander Medvednikov 9efe305093 fix Linux build 2019-07-10 21:57:15 +02:00
Alexander Medvednikov 3d4cd0bbc0 check integer const overflow at compilation 2019-07-10 21:22:03 +02:00
Alexander Medvednikov 1b09e37a80 fix typ_to_fmt() 2019-07-10 14:38:39 +02:00
Alexander Medvednikov c8fc262da3 println: make aliases printable 2019-07-10 14:26:37 +02:00
Alexander Medvednikov fba8443f30 allow defining methods on aliases 2019-07-10 14:18:21 +02:00
Alexander Medvednikov 9907f07602 fix the __ error message 2019-07-10 10:08:37 +02:00
Alexander Medvednikov 28843a12c7 cache string.hash() 2019-07-10 10:00:12 +02:00
Alexander Medvednikov e1ddac1590 utf8: remove unused UTF8_CHAR_LEN macro and add a simple utf8 test 2019-07-10 09:07:04 +02:00
Alexander Medvednikov 68228f9977 parser: clean up submodule implementation a bit 2019-07-10 09:02:04 +02:00
Alexander Medvednikov 87762d6cf3 DOT => .dot 2019-07-10 02:07:54 +02:00
Alexander Medvednikov c44d54fb4c V 0.1.13 2019-07-10 02:03:09 +02:00
Alexander Medvednikov 26ef99293d new enum syntax; update the compiler (`p.tok == .name`) 2019-07-10 02:02:38 +02:00
Henrixounez 26af513e1b repl: remove void line for unused and compile as repl 2019-07-09 20:55:37 +02:00
Delyan Angelov 932f6d1bef Fix hot code reloading on linux 2019-07-09 20:54:23 +02:00
Henrixounez 7b1be8a2bd CI: Add back erased commits and dont test hot code examples 2019-07-09 20:44:30 +02:00
Alexander Medvednikov 045d480c8c clean up the examples a bit 2019-07-07 22:09:08 +02:00
Alexander Medvednikov 7fed451226 inotify TODO 2019-07-07 22:04:41 +02:00
Alexander Medvednikov de8dc4cddb hot code reloading examples 2019-07-07 22:02:27 +02:00
Nick Treleaven af19aa5096 Fix #1021 - Optional `or` branch doesn't define `err` 2019-07-07 01:24:36 +02:00
joe-conigliaro 8a2d25247f submodules 2019-07-07 01:22:47 +02:00
aguspiza 36908fa304 fix for #1020 2019-07-07 01:20:56 +02:00
Alexander Medvednikov 59796a4168 small REPL fixes 2019-07-06 15:39:26 +02:00
Shivanjan Chakravorty f630d3f342 main: vrepl interactive shell update 2019-07-06 12:07:44 +02:00
Henrixounez 28c2a949b2 compiler: fix errors on dots methods 2019-07-06 12:02:18 +02:00
hazohelet 204bcee951 fix typo 2019-07-06 12:01:58 +02:00
Alexander Medvednikov 68b7ae26b3 fix tests 2019-07-05 22:12:06 +02:00
Alexander Medvednikov 8d407cec90 another Windows \r\n bug fix 2019-07-05 22:07:44 +02:00
Alexander Medvednikov 871fb3831a do not allow fn main() to return a value 2019-07-05 22:03:00 +02:00
Alexander Medvednikov d47e2f113f Revert "make function arguments immutable"
This reverts commit 0f0ed8d716.
2019-07-05 02:44:22 +02:00
Alexander Medvednikov 0f0ed8d716 make function arguments immutable 2019-07-05 00:24:13 +02:00
Alexander Medvednikov 74dbb1bce3 interface: fix function is private bug 2019-07-04 23:30:11 +02:00
Alexander Medvednikov 92528205c1 minor fixes 2019-07-04 22:39:15 +02:00
Alexander Medvednikov cc77d8cdd2 fix Windows line ending bug 2019-07-04 21:55:29 +02:00
Alexander Medvednikov 9b0bb2f72c make.bat for easier compilation on Windows 2019-07-04 20:44:44 +02:00
Alexander Medvednikov 300ed59598 do not allow `import builtin` 2019-07-04 17:36:53 +02:00
Alexander Medvednikov 8f10e37370 make << work with appending arrays; PostgreSQL driver 2019-07-04 17:31:14 +02:00
Cytown fbe8f6c774 fix array initial with [0.0/f32/f64; length] compile error
solution: add array_f32/array_f64 type
Signed-off-by: Cytown <cytown@gmail.com>
2019-07-04 13:01:51 +02:00
Alexander Medvednikov 68ed555e91 V 0.1.12 2019-07-04 02:21:27 +02:00
marco 155e1fa961 FIX #202
allow interface method with empty (void) return type

-> only look for type declaration if no new line has been
   while skipping whitespace
2019-07-04 01:04:10 +02:00
Alexander Medvednikov 7fdd94fcbb println: fix a bug with u64 etc and newlines 2019-07-04 00:54:40 +02:00
Alexander Medvednikov 1e32a4cec4 println: optimize and remove memory leaks 2019-07-04 00:40:30 +02:00
Alexander Medvednikov 5d4d3b838b StringsBuilder => strings.Builder; strings.repeat() 2019-07-03 22:18:46 +02:00
Alexander Medvednikov 8c36b9499d make json work with new optionals 2019-07-03 21:50:06 +02:00
Alexander Medvednikov dec0d961f5 os: clean up file functions, use optionals 2019-07-03 21:37:12 +02:00
Ivan Sharavuev 290e1df893 Move token string length from magic number to constant. 2019-07-03 18:58:50 +02:00
Alexander Medvednikov d9753ee2c6 lots of vfmt fixes 2019-07-03 16:37:21 +02:00
Zaoqi 015467778d Update .gitignore 2019-07-03 16:12:37 +02:00
Justice Suh a25c4bb59f compiler: add debug flag 2019-07-03 16:10:21 +02:00
AtjonTV ab20db8e6e look for modules in current path 2019-07-02 21:55:57 +02:00
Alexander Medvednikov 1bbf3a3a0c make compiler 2019-07-02 21:45:51 +02:00
Alexander Medvednikov a9b8bc067f enums (`mode == .default_mode` syntax); fix `foo.bar[0].baz = val` 2019-07-02 21:39:26 +02:00
joe-conigliaro 4ed67fbe7e implement get_line & get_raw_line for windows + REPL 2019-07-02 16:39:40 +02:00
yep84 b57d227aa0 Allow to parse uppercase hex number 2019-07-02 15:03:01 +02:00
jiro4989 30633ff14f Fix "Nested comments won't compile" (#908) 2019-07-02 02:19:15 +02:00
Henrixounez dc8c84a2a8 compiler: tmp variables on scripts inside generated main function 2019-07-01 23:42:09 +02:00
yep84 2ca9866f86 Handle --version arg as it already do for help 2019-07-01 22:04:28 +02:00
d2verb e27a3b65f1 Fix #898 2019-07-01 20:56:31 +02:00
Alexander Medvednikov d09758f723 fix a typo 2019-07-01 17:29:29 +02:00
Alexander Medvednikov 6ddc57c190 fix cc_windows_cross() 2019-07-01 17:23:30 +02:00
Maulana Akmal 24b0fd5097 Refactor BuildMode enum to lowercase 2019-07-01 17:20:59 +02:00
Alexander Medvednikov 4c3f1386ef V 0.1.11 2019-07-01 16:53:54 +02:00
Alexander Medvednikov 99a9a6572a lots of Windows fixes and cross compilation for Windows 2019-07-01 16:51:17 +02:00
Zaoqi 00174cdb83 fix #872 2019-07-01 10:46:42 +02:00
Alexander Medvednikov 5936ab16c8 fix maps; use maps for storing functions; verify struct initialization 2019-07-01 02:24:39 +02:00