Skip to content

Commit a94a22b

Browse files
committed
prune more unused functions and JSON fields
1 parent f4c5475 commit a94a22b

28 files changed

+173
-83
lines changed

era-compiler-solidity/src/solc/codegen.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use crate::solc::Compiler as SolcCompiler;
1010
///
1111
/// The Solidity compiler codegen.
1212
///
13-
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, serde::Serialize, serde::Deserialize)]
13+
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, serde::Deserialize)]
1414
#[serde(rename_all = "lowercase")]
1515
pub enum Codegen {
1616
/// The Yul IR.
@@ -40,7 +40,7 @@ impl FromStr for Codegen {
4040
"yul" => Ok(Self::Yul),
4141
"evmla" => Ok(Self::EVMLA),
4242
string => anyhow::bail!(
43-
"Invalid codegen: {string}. Available options: {}",
43+
"Invalid codegen: `{string}`. Available options: {}.",
4444
[Self::EVMLA, Self::Yul]
4545
.into_iter()
4646
.map(|codegen| codegen.to_string())

era-compiler-solidity/src/solc/mod.rs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -290,13 +290,6 @@ impl Compiler {
290290
libraries: BTreeMap<String, BTreeMap<String, String>>,
291291
messages: &mut Vec<StandardJsonOutputError>,
292292
) -> anyhow::Result<StandardJsonOutput> {
293-
if self.version.default != Self::LAST_SUPPORTED_VERSION {
294-
anyhow::bail!(
295-
"Yul validation is only supported with the latest supported version of the Solidity compiler: {}",
296-
Self::LAST_SUPPORTED_VERSION,
297-
);
298-
}
299-
300293
let mut solc_input = StandardJsonInput::from_yul_paths(
301294
paths,
302295
libraries.clone(),

era-compiler-solidity/src/solc/standard_json/input/settings/optimizer.rs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,7 @@ pub struct Optimizer {
2323

2424
impl Default for Optimizer {
2525
fn default() -> Self {
26-
Self {
27-
mode: Self::default_mode(),
28-
fallback_to_optimizing_for_size: false,
29-
30-
enabled: Self::default_enabled(),
31-
}
26+
Self::new(Self::default_mode(), false)
3227
}
3328
}
3429

era-compiler-solidity/src/solc/version.rs

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,4 @@ impl Version {
3030
l2_revision,
3131
}
3232
}
33-
34-
///
35-
/// A shortcut constructor for a simple version.
36-
///
37-
pub fn new_simple(version: semver::Version) -> Self {
38-
Self {
39-
long: version.to_string(),
40-
default: version,
41-
l2_revision: None,
42-
}
43-
}
4433
}

era-compiler-solidity/tests/cli/codegen.rs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,3 +110,22 @@ fn with_codegen_standard_json_mode(codegen: SolcCodegen) -> anyhow::Result<()> {
110110

111111
Ok(())
112112
}
113+
114+
#[test]
115+
fn with_codegen_invalid() -> anyhow::Result<()> {
116+
common::setup()?;
117+
118+
let args = &[
119+
"--codegen",
120+
"invalid",
121+
"--bin",
122+
cli::TEST_SOLIDITY_CONTRACT_PATH,
123+
];
124+
125+
let result = cli::execute_zksolc(args)?;
126+
result
127+
.failure()
128+
.stderr(predicate::str::contains("Invalid value for \'--codegen <codegen>\': Invalid codegen: `invalid`. Available options: evmla, yul"));
129+
130+
Ok(())
131+
}

era-compiler-solidity/tests/data/standard_json_input/eravm_assembly_urls.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222
]
2323
}
2424
},
25+
"metadata": {
26+
"hashType": "ipfs"
27+
},
2528
"libraries": {}
2629
}
2730
}

era-compiler-solidity/tests/data/standard_json_input/eravm_assembly_urls_invalid.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222
]
2323
}
2424
},
25+
"metadata": {
26+
"hashType": "ipfs"
27+
},
2528
"libraries": {}
2629
}
2730
}

era-compiler-solidity/tests/data/standard_json_input/eravm_assembly_urls_missing_file.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222
]
2323
}
2424
},
25+
"metadata": {
26+
"hashType": "ipfs"
27+
},
2528
"libraries": {}
2629
}
2730
}

era-compiler-solidity/tests/data/standard_json_input/llvm_ir_urls.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222
]
2323
}
2424
},
25+
"metadata": {
26+
"hashType": "ipfs"
27+
},
2528
"libraries": {}
2629
}
2730
}

era-compiler-solidity/tests/data/standard_json_input/llvm_ir_urls_invalid.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222
]
2323
}
2424
},
25+
"metadata": {
26+
"hashType": "ipfs"
27+
},
2528
"libraries": {}
2629
}
2730
}

era-compiler-solidity/tests/data/standard_json_input/llvm_ir_urls_missing_file.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222
]
2323
}
2424
},
25+
"metadata": {
26+
"hashType": "ipfs"
27+
},
2528
"libraries": {}
2629
}
2730
}

era-compiler-solidity/tests/data/standard_json_input/solidity_solc.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
},
1010
"settings": {
1111
"optimizer": {
12-
"enabled": true,
1312
"runs": 200,
1413
"details": {
1514
"peephole": true,
@@ -19,6 +18,9 @@
1918
"cse": true,
2019
"constantOptimizer": true
2120
}
21+
},
22+
"metadata": {
23+
"useLiteralContent": true
2224
}
2325
}
2426
}

era-compiler-solidity/tests/data/standard_json_input/solidity_solc_empty_sources.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@
55
"optimizer": {
66
"enabled": true,
77
"runs": 200
8+
},
9+
"metadata": {
10+
"useLiteralContent": true
811
}
912
}
1013
}

era-compiler-solidity/tests/data/standard_json_input/solidity_solc_invalid.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111
"optimizer": {
1212
"enabled": true,
1313
"runs": 200
14+
},
15+
"metadata": {
16+
"useLiteralContent": true
1417
}
1518
}
1619
}

era-compiler-solidity/tests/data/standard_json_input/solidity_solc_missing_sources.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
"optimizer": {
55
"enabled": true,
66
"runs": 200
7+
},
8+
"metadata": {
9+
"useLiteralContent": true
710
}
811
}
912
}

era-compiler-solidity/tests/data/standard_json_input/solidity_zksolc_invalid.json

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,8 @@
99
},
1010
"settings": {
1111
"optimizer": {
12-
"enabled": true,
1312
"mode": "3",
14-
"details": null,
15-
"fallbackToOptimizingForSize": false,
16-
"disableSystemRequestMemoization": true
13+
"fallbackToOptimizingForSize": false
1714
},
1815
"outputSelection": {
1916
"*": {
@@ -26,9 +23,11 @@
2623
]
2724
}
2825
},
26+
"metadata": {
27+
"hashType": "ipfs"
28+
},
2929
"libraries": {},
30-
"isSystem": false,
31-
"forceEvmla": true,
32-
"areLibrariesMissing": false
30+
"enableEraVMExtensions": true,
31+
"forceEVMLA": true
3332
}
3433
}

era-compiler-solidity/tests/data/standard_json_input/solidity_zksolc_recursion.json

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,8 @@
1111
},
1212
"settings": {
1313
"optimizer": {
14-
"enabled": true,
1514
"mode": "3",
16-
"details": null,
17-
"fallbackToOptimizingForSize": false,
18-
"disableSystemRequestMemoization": true
15+
"fallbackToOptimizingForSize": true
1916
},
2017
"outputSelection": {
2118
"*": {
@@ -28,9 +25,11 @@
2825
]
2926
}
3027
},
28+
"metadata": {
29+
"hashType": "ipfs"
30+
},
3131
"libraries": {},
32-
"isSystem": false,
33-
"forceEvmla": true,
34-
"areLibrariesMissing": false
32+
"enableEraVMExtensions": true,
33+
"forceEVMLA": true
3534
}
3635
}

era-compiler-solidity/tests/data/standard_json_input/suppressed_errors_and_warnings.json

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,28 @@
77
},
88
"settings": {
99
"optimizer": {
10-
"enabled": true,
11-
"runs": 200
12-
}
10+
"mode": "3",
11+
"fallbackToOptimizingForSize": false
12+
},
13+
"outputSelection": {
14+
"*": {
15+
"": [
16+
"metadata"
17+
],
18+
"*": [
19+
"abi",
20+
"evm.methodIdentifiers"
21+
]
22+
}
23+
},
24+
"metadata": {
25+
"hashType": "ipfs"
26+
},
27+
"libraries": {},
28+
"enableEraVMExtensions": true,
29+
"forceEVMLA": false,
30+
"suppressedErrors": ["sendtransfer"],
31+
"suppressedWarnings": ["txorigin"]
1332
},
1433
"suppressedErrors": ["sendtransfer"],
1534
"suppressedWarnings": ["txorigin"]

era-compiler-solidity/tests/data/standard_json_input/suppressed_errors_invalid.json

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,28 @@
77
},
88
"settings": {
99
"optimizer": {
10-
"enabled": true,
11-
"runs": 200
12-
}
10+
"mode": "3",
11+
"fallbackToOptimizingForSize": false
12+
},
13+
"outputSelection": {
14+
"*": {
15+
"": [
16+
"metadata"
17+
],
18+
"*": [
19+
"abi",
20+
"evm.methodIdentifiers"
21+
]
22+
}
23+
},
24+
"metadata": {
25+
"hashType": "ipfs"
26+
},
27+
"libraries": {},
28+
"enableEraVMExtensions": true,
29+
"forceEVMLA": false,
30+
"suppressedErrors": ["INVALID_SUPPRESSED_ERROR_TYPE"],
31+
"suppressedWarnings": ["txorigin"]
1332
},
1433
"suppressedErrors": ["INVALID_SUPPRESSED_ERROR_TYPE"],
1534
"suppressedWarnings": ["txorigin"]

era-compiler-solidity/tests/data/standard_json_input/suppressed_warnings_invalid.json

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,28 @@
77
},
88
"settings": {
99
"optimizer": {
10-
"enabled": true,
11-
"runs": 200
12-
}
10+
"mode": "3",
11+
"fallbackToOptimizingForSize": false
12+
},
13+
"outputSelection": {
14+
"*": {
15+
"": [
16+
"metadata"
17+
],
18+
"*": [
19+
"abi",
20+
"evm.methodIdentifiers"
21+
]
22+
}
23+
},
24+
"metadata": {
25+
"hashType": "ipfs"
26+
},
27+
"libraries": {},
28+
"enableEraVMExtensions": true,
29+
"forceEVMLA": false,
30+
"suppressedErrors": ["sendtransfer"],
31+
"suppressedWarnings": ["INVALID_SUPPRESSED_WARNING_TYPE"]
1332
},
1433
"suppressedErrors": ["sendtransfer"],
1534
"suppressedWarnings": ["INVALID_SUPPRESSED_WARNING_TYPE"]

era-compiler-solidity/tests/data/standard_json_input/yul_solc.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@
99
"optimizer": {
1010
"enabled": true
1111
},
12+
"metadata": {
13+
"useLiteralContent": true
14+
},
1215
"outputSelection": {
1316
"*": {
1417
"": [

era-compiler-solidity/tests/data/standard_json_input/yul_solc_urls.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111
"optimizer": {
1212
"enabled": true
1313
},
14+
"metadata": {
15+
"useLiteralContent": true
16+
},
1417
"outputSelection": {
1518
"*": {
1619
"": [

era-compiler-solidity/tests/data/standard_json_input/yul_solc_urls_invalid.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111
"optimizer": {
1212
"enabled": true
1313
},
14+
"metadata": {
15+
"useLiteralContent": true
16+
},
1417
"outputSelection": {
1518
"*": {
1619
"": [

0 commit comments

Comments
 (0)