`You shall not have another CompilerStack aside me` error in Remix when compiling with 0.5.9
- Dominant language
- C++
- Stars
- 25.7k
- Forks
- 6.2k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 21
Description
## Description
I used the 0.5.9 compiler in Remix to compile the program with an error, but I was able to successfully compile using binary solc
## Environment
- Compiler version: 0.5.9
- Target EVM version (as per compiler settings): None
- Framework/IDE (e.g. Truffle or Remix):
- EVM execution environment / backend / blockchain client: Remix, Command-Line
- Operating system: Linux
## Steps to Reproduce
```solidity
pragma solidity ^0.5.0;
pragma experimental ABIEncoderV2;
contract test {
uint[2][] public originalData;
uint[2][] public decodedData;
function encodeData() public returns (uint) {
originalData.push([1, 2]);
originalData.push([3, 4]);
originalData.push([5, 6]);
bytes memory encodedData=abi.encode(originalData);
decodedData = abi.decode(encodedData, (uint[2][]));
return decodedData[1][1];
}
}
```
### Remix


### Command
```bash
solc-0509 test.sol --bin
```
Successfully obtained bytecode
Contributor guide
Research direction
Start by compiling the provided Solidity contract with compiler version 0.5.9 through Remix and with `solc-0509 test.sol --bin`, then compare the differing results. Investigate the `You shall not have another CompilerStack aside me` error and confirm that the behavior is consistent across both compilation paths; done means the discrepancy is explained and the failing path is corrected or documented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- solidity
- Domain
- blockchain, compilers
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100