Commit Graph

858 Commits

Author SHA1 Message Date
Paweł Bylica 81db59cede
loader: Make error_code in evmc_load_and_create() optional 2019-06-05 16:07:49 +02:00
Jake Lang 9510206aa1
Merge pull request #262 from ethereum/rust-proc-macro
Rust: Attribute-style procedural macro to generate EVMC FFI code with user-defined data
2019-06-04 17:36:07 +02:00
Jake Lang 2e14aa2d5c rust: Procedural macro for automatic VM declaration 2019-06-04 16:18:23 +01:00
Alex Beregszaszi d7c6d08947
Merge pull request #283 from ethereum/test-precompiles
tests: add test case for precompile implementation
2019-06-03 09:30:56 +01:00
Alex Beregszaszi 4da65048a4 tests: precompile test doesn't needs a host context 2019-06-03 09:26:37 +01:00
Alex Beregszaszi 32fce24aa8 examples: use EVMC_REJECTED in example_precompiles_vm 2019-06-03 09:26:37 +01:00
Alex Beregszaszi 42f8d2522f tests: add test case for precompile implementation 2019-06-03 09:26:37 +01:00
Paweł Bylica 0f2416da0c
Merge pull request #307 from ethereum/loader_strcpy_s
loader: Fix strcpy_s()
2019-05-31 12:28:02 +02:00
Paweł Bylica 8c3b3e61e6
loader: Change strcpy_sx() to be limited version of strcpy_s()
The strcpy_sx() now reports errors and behaves as strcpy_s() when buffer is too small (nulls the buffer). But it does not have all the checks.
2019-05-31 08:15:17 +02:00
Paweł Bylica 5757da5859
loader: Expose strcpy_sx() for testing 2019-05-31 08:15:17 +02:00
Paweł Bylica 2de1f81c72
loader: Rename strcpy_s() implementation to strcpy_sx()
The implementation strcpy_s() in loader is wrong (to be fixed) and limited in comparison to strcpy_s() spec. Rename it to strcpy_sx() to indicate it is not the one from standard library.
2019-05-31 08:15:16 +02:00
Alex Beregszaszi f12ea3d2e3
Merge pull request #297 from ethereum/rust-result
rust: add failure() and success() helpers to ExecutionResult
2019-05-30 15:39:07 +01:00
Alex Beregszaszi 4eeb42d074 rust: add failure() and success() helpers to ExecutionResult 2019-05-30 14:55:25 +01:00
Alex Beregszaszi 80f99dfe6b examples: Remove explicit namespace in rust-example-vm 2019-05-30 14:55:25 +01:00
Paweł Bylica 1ca32bf17e
Merge pull request #306 from ethereum/fix-loader
loader: Destroy VM with incompatible ABI
2019-05-30 15:31:02 +02:00
Paweł Bylica b0133730be
Add CHANGELOG entry about the fix in loader 2019-05-30 14:25:55 +02:00
Paweł Bylica 7b02081f2e
loader: Destroy VM with incompatible ABI
When a VM is loaded but turns out is has incompatible ABI version it should be destroyed before reporting the loading error and returning a null handle.

Fixes https://github.com/ethereum/evmc/issues/305
2019-05-30 14:21:04 +02:00
Paweł Bylica ba10da07d0
loader: Use new VM mock with wrong ABI version 2019-05-30 14:15:20 +02:00
Paweł Bylica 591ac7c3a8
loader: Add more interesting VM mocks for unit tests 2019-05-30 14:10:00 +02:00
Paweł Bylica 89a4e8ffde
Merge pull request #301 from ethereum/cpp_get_capabilities
cpp: Add vm::get_capabilities() method
2019-05-29 14:41:23 +02:00
Paweł Bylica 6292d1780e
cpp: Add vm::get_capabilities() method 2019-05-29 13:11:52 +02:00
Paweł Bylica 3416b4727c
evmc: Tweak documentation for get_capabilities() method 2019-05-29 13:07:04 +02:00
Paweł Bylica 34be102581
Merge pull request #300 from ethereum/cpp-header-guards
cpp: Add missing '#pragma once' in evmc.hpp
2019-05-29 13:01:10 +02:00
Paweł Bylica 41db54802f
cpp: Add missing '#pragma once' in evmc.hpp 2019-05-29 10:46:11 +02:00
Alex Beregszaszi 0c49f7abed
Merge pull request #287 from ethereum/rust-result
rust: remove support for create_address in ExecutionResult::new
2019-05-22 17:25:05 +01:00
Alex Beregszaszi 60bf98fb72 rust: remove support for create_address in ExecutionResult::new 2019-05-22 17:18:45 +01:00
Alex Beregszaszi 8c19e445fd
Merge pull request #286 from ethereum/rust-result-simplify
rust: remove code duplication in ExecutionResult
2019-05-22 17:18:07 +01:00
Alex Beregszaszi 1e9f764bd5 rust: remove code duplication in ExecutionResult 2019-05-21 14:35:20 +01:00
Paweł Bylica 37a5b8adf6
Merge pull request #293 from ethereum/cpp_result_release_raw
cpp: Rename result::raw() to result::release_raw()
2019-05-21 11:24:28 +02:00
Paweł Bylica 3ffadec2c7
changelog: Add entry about rename of result::raw() 2019-05-16 08:56:40 +02:00
Paweł Bylica 594da7553e
cpp: Rename result::raw() to result::release_raw() 2019-05-16 08:55:55 +02:00
Paweł Bylica 8423fac003
Merge branch 'release/6.2'
# Conflicts:
#	.bumpversion.cfg
#	CHANGELOG.md
#	CMakeLists.txt
#	bindings/rust/evmc-sys/Cargo.toml
#	bindings/rust/evmc-vm/Cargo.toml
2019-05-16 08:55:35 +02:00
Paweł Bylica 14d70e4478
EVMC 6.2.2
Bump version: 6.2.1 → 6.2.2
2019-05-16 08:49:49 +02:00
Paweł Bylica d01eb47add
Merge pull request #292 from ethereum/appveyor-ninja
ci: Use Ninja on AppVeyor
2019-05-15 20:38:08 +02:00
Paweł Bylica 703b661826
Merge pull request #282 from ethereum/fix_result_move
cpp: Fix evmc::result's move assignment operator
2019-05-15 16:42:32 +02:00
Paweł Bylica 7b42c81f53
cmake: Add evmc/ prefix to ctest names 2019-05-15 14:45:10 +02:00
Paweł Bylica 0fb409ee83
cmake: Cleanup CMake script 2019-05-15 14:41:48 +02:00
Paweł Bylica 3d41dc16d9
ci: Use Ninja on AppVeyor 2019-05-15 14:37:45 +02:00
Paweł Bylica f4f2b5db01
test: Use the same generator in CMake integration tests 2019-05-15 14:37:42 +02:00
Paweł Bylica b5a527c39a
Merge pull request #290 from ethereum/wshadow
Do not shadow variable names
2019-05-15 13:20:59 +02:00
Paweł Bylica ff14830784
Do not shadow variable names 2019-05-15 12:04:29 +02:00
Paweł Bylica 6474579357
cmake: Set build type before project() 2019-05-15 11:59:36 +02:00
Paweł Bylica a9c4414790
Upgrade Cable to 0.4.0 2019-05-15 11:58:04 +02:00
Paweł Bylica a0bd7232d7 Squashed 'cmake/cable/' changes from eb2188b..a727efd
cea3a65 Cable 0.4.0
52aef91 Add -Wshadow to compiler settings
3091e7d Cable 0.3.1
a605a31 Fix typo else() -> elseif()
6885ca6 Cable 0.3.0
019f336 Upgrade HunterGate
b245d3e Add option -DNATIVE=TRUE
5d95a69 Get rid of default warning level on MSVC
27bd330 Do not check for GCC/clang flags support in MSVC
2b8c975 Require cable_build_type() to be used before project()
d221c8d Cable 0.2.18
d2513e7 Quite log about Cable in subprojects

git-subtree-dir: cmake/cable
git-subtree-split: a727efde6b49e4e18256fcf16831df9a35da39af
2019-05-15 11:58:04 +02:00
Paweł Bylica d9a6a8b0a9
changelog: Add entry about fixed evmc::result 2019-05-14 17:58:00 +02:00
Paweł Bylica 8ee9d44592
cpp: Remove redundant deleted copy constructor of result 2019-05-14 17:58:00 +02:00
Paweł Bylica cea8d3a5b5
cpp: Fix evmc::result's move assignment operator 2019-05-14 17:57:59 +02:00
Paweł Bylica 3c91910f52
cpp: Add unit test for moving evmc::result 2019-05-14 17:57:59 +02:00
Paweł Bylica 8774e38af8
Merge pull request #281 from ethereum/fix_result_raw
cpp: Fix evmc::result::raw()
2019-05-14 17:57:05 +02:00
Paweł Bylica 9685f28022
changelog: Add entry about fixed compilation error in evmc::result::raw() 2019-05-14 16:13:01 +02:00