tolk-vm
f00ff75548
[FunC] Make Expr::VarApply always impure ( #1381 )
...
Expr::_VarApply is now always impure. It means, that
for `some_var()`, don't make any considerations about runtime value,
it's always called.
2024-11-14 18:32:04 +03:00
EmelyanenkoK
583178ccb1
FunC: enable asserts and fix try/catch stack corruption ( #699 )
...
* FunC: enable asserts in Release
* FunC: Fix analyzing infinite loops
* FunC: Allow catch with one tensor argument
* FunC: Fix try/catch stack corruption
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2023-05-15 15:31:42 +03:00
EmelyanenkoK
8eb167b76a
Fix FunC UB ( #656 )
...
* Fix UB in func
* Improve optimizing int consts and unused variables in FunC
* Bump funC version to 0.4.3
* Fix analyzing repeat loop
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2023-04-03 10:13:39 +03:00
Dan Volkov
4590ed381b
Make funcfiftlib compilation compatible with modern compilers ( #618 )
...
* wip: make funcfiftlib compilation compatible with modern compilers
* wip: add methods needed for another compiler
* fix: tdutils port config if emscripten
* feat: func source and realpath callback
* fix: invalid fift compilation exceptions
---------
Co-authored-by: krigga <krigga7@gmail.com>
2023-03-09 17:37:15 +03:00
SpyCheese
0578cb4a42
Fix typos, UBs and warnings ( #625 )
2023-02-28 12:06:09 +03:00
SpyCheese
c6143715cc
Fix some error handling in FunC ( #599 )
2023-01-23 13:01:40 +03:00
EmelyanenkoK
653c88aa9d
Add pragmas to funC for precise control of computation order ( #589 )
...
* FunC pragmas: allow-post-modification and compute-asm-ltr
* Warn if #pragma is enabled only in included files
* Add tests for new pragmas
* Add special ops for "allow-post-modification" only when needed
* Update FunC version to 0.4.1
* Allow empty inlines (#10 )
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2023-01-13 12:45:04 +03:00
EmelyanenkoK
e1be988df5
Add try/catch to FunC ( #560 )
...
* Add try-catch
* Fix 'return' bugs
* Update tests
* Fix 'SETCONTVARARGS' bug
* Fix 'SETCONTVARARGS' bug again
* Check deep stack
* Add throw_arg
Co-authored-by: legaii <jgates.ardux@gmail.com>
2022-12-22 15:26:39 +03:00
EmelyanenkoK
d23267d996
Add triple quotes asms ( #463 )
...
* Add python-like triple quotes for multiline strings
* Add test for multiline asm
* Allow asm definition duplicate
* Asm duplicate: add test & fixes
* Fix multiline asm
* Fix asm duplicate
Co-authored-by: legaii <jgates.ardux@gmail.com>
2022-09-22 16:54:26 +03:00
EmelyanenkoK
3b1d33f543
Allow constants with the same name and value ( #462 )
...
Co-authored-by: legaii <jgates.ardux@gmail.com>
2022-09-20 14:16:53 +03:00
AlexeyFSL
e2cca03a78
Func and Fift lib for WASM ( #455 )
...
* Add social badges
Add telegram, Twitter and Stack Overflow badges in Readme
* update README.md badges
* patch for wasm build
* fix narrowing conversion error for clang compiler
* refactor func code
* funcfift lib implementation
* fix funcfift lib
fix CMakeFile
* fix rvalue missing
* remove unused field from result json
* name fix
remove unused target
* rename
* added script for building funcfiftlib to wasm
* fix json fild names
* fix commit hash for script
* added version function to funcfiftlib
* update commit hash for script
* add realpath fail processing
fix DISABLE_EXCEPTION_CATCHING option
* update hash in script
Co-authored-by: Anthony Tsivarev <tsivarev.a@gmail.com>
Co-authored-by: EmelyanenkoK <emelyanenko.kirill@gmail.com>
Co-authored-by: tolya-yanot <1449561+tolya-yanot@users.noreply.github.com>
2022-09-14 12:36:01 +03:00
starlightduck
eb35cf653a
Use td::realpath
and add re-inclusion tests
2022-05-12 18:57:03 +03:00
starlightduck
9356a16b84
Implement #include
keyword with advanced checks and backtrace
2022-05-12 12:54:34 +03:00
EmelyanenkoK
0c772185ef
Add constants and string literals to funC
...
* Add special string literals "..."? (s,a,u,h,)
* Add string literal H (256-bit hash)
* Add string literal c (crc32)
* Use td::hex_encode instead of homebrew function and add test
* Fix error codes and use more generic address
* Add support for int and slice constants
* Add support for strongly typed constants
* Add support for precompiled constant expressions (hard!)
Co-authored-by: starlightduck <starlightduck@gmail.com>
2022-05-06 11:13:04 +03:00
starlightduck
0e955793ed
Add support for #pragma version
and FunC versioning
...
FunC pragma refined error messages and ^ partials
2022-05-06 11:11:42 +03:00
ton
be9c34c62d
bugfixes
2020-04-10 23:06:01 +04:00
ton
54c7a4dcc3
updated vm
...
- updated func/fift
- additional checks in block validator
- docs
- tunnel prototype in ADNL
2020-03-11 14:19:31 +04:00
ton
a73d202ba2
updated func and tonlib
2020-02-15 20:03:17 +04:00
ton
493ae2410c
rldp-http-proxy: use tonlib
...
- rldp-http-proxy used TONLib to resolve domains via DNS smartcontract
- updated tonlib
- bugfixes
2020-02-12 00:14:16 +04:00
ton
acf16718e6
updated func/fift
...
- updated func/fift
- updated liteclient/liteserver
- bugfixes
2019-12-29 12:14:12 +03:00
ton
9c9248a9ae
updated func
...
- updated func
- deleted autogenerated files from git
- updated liteclient
- increase state sync timeout
2019-10-16 13:00:43 +04:00
ton
38c3e39066
func/fift: bugfixes
2019-10-09 20:00:54 +04:00
initial commit
c2da007f40
initial commit
2019-09-07 14:33:36 +04:00