argotorg / argotorg/solidity

[isoltest] Formatting should support strings longer than 32 bytes

Open
#7,197 5 comments 0 reactions 0 assignees View on GitHub
bug :bug: low impact medium effort should compile without error should have testing :hammer:
Dominant language
C++
Stars
25.7k
Forks
6.2k
Avg merge
1d 11h
Merged PRs (30d)
21

Description

The following test
```
contract C {
function e() public {
revert("Transaction failed. Transaction failed.");
}
}
// ====
// EVMVersion: >homestead
// ----
// e() ->
```
does not handle strings longer than 32 bytes correctly:
```
// e() -> FAILURE, hex"08c379a0", 0x20, 39, "Transaction failed. Transaction "
```

Contributor guide

Open the contributing guide

Research direction

Start with the supplied isoltest contract case and reproduce the output for the longer revert string. Trace the formatter that emits the FAILURE line and compare its handling of the 32-byte boundary with the expected value. Done means strings longer than 32 bytes are formatted correctly and the relevant isoltest coverage passes.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, solidity
Domain
testing
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.