eos
eos copied to clipboard
replace is_callable_v workaround with is_invocable_v in eos-vm; fixes clang12 build
Change Description
This is_callable_v
workaround in eos-vm for some old compiler is causing compile failures on clang12 with the error
template argument for non-type template parameter must be an expression
Replacing the workaround with simply is_invocable_v
seems to work on clang12, our entire CICD collection, and gcc8, clang6, and XCode 10.2 (the latter of which doesn't actually build the entirety of eosio develop anyways). Please review carefully though I may be misunderstanding what is going on here.
Needs EOSIO/eos-vm#210 and seems to pick up EOSIO/eos-vm#209 which hasn't been synced up here.
Change Type
Select ONE:
- [ ] Documentation
- [ ] Stability bug fix
- [x] Other
- [ ] Other - special case
Testing Changes
Select ANY that apply:
- [ ] New Tests
- [ ] Existing Tests
- [ ] Test Framework
- [ ] CI System
- [ ] Other
Consensus Changes
- [ ] Consensus Changes
API Changes
- [ ] API Changes
Documentation Additions
- [ ] Documentation Additions