mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Shellcheck and minor fixes
This commit is contained in:
parent
62ff0fb0cb
commit
7508c5b1fe
@ -121,9 +121,9 @@ function test_ast_import_export_equivalence
|
|||||||
local sol_file="$1"
|
local sol_file="$1"
|
||||||
local input_files=( "${@:2}" )
|
local input_files=( "${@:2}" )
|
||||||
|
|
||||||
local export_command=("$SOLC" --combined-json ast --pretty-json --json-indent 4 "${input_files[@]}")
|
local export_command=("${SOLC}" --combined-json ast --pretty-json --json-indent 4 "${input_files[@]}")
|
||||||
local import_command=("$SOLC" --import-ast --combined-json ast --pretty-json --json-indent 4 expected.json)
|
local import_command=("${SOLC}" --import-ast --combined-json ast --pretty-json --json-indent 4 expected.json)
|
||||||
local import_via_standard_json_command=("$SOLC" --combined-json ast --pretty-json --json-indent 4 --standard-json standard_json_input.json)
|
local import_via_standard_json_command=("${SOLC}" --combined-json ast --pretty-json --json-indent 4 --standard-json standard_json_input.json)
|
||||||
|
|
||||||
# export ast - save ast json as expected result (silently)
|
# export ast - save ast json as expected result (silently)
|
||||||
if ! "${export_command[@]}" > expected.json 2> stderr_export.txt
|
if ! "${export_command[@]}" > expected.json 2> stderr_export.txt
|
||||||
@ -256,7 +256,7 @@ function test_evmjson_via_ir_and_yul_import_export
|
|||||||
|
|
||||||
mkdir yul
|
mkdir yul
|
||||||
# export found solidity contracts to yul.
|
# export found solidity contracts to yul.
|
||||||
run_solc --optimize --via-ir --ir-optimized "${input_files[@]}" --no-optimize-yul -o yul/
|
run_solc --optimize --via-ir --ir-optimized "${input_files[@]}" --no-optimize-yul -o yul
|
||||||
for filename in yul/*
|
for filename in yul/*
|
||||||
do
|
do
|
||||||
if [[ -s "${filename}" ]]
|
if [[ -s "${filename}" ]]
|
||||||
@ -274,8 +274,8 @@ function test_evmjson_via_ir_and_yul_import_export
|
|||||||
|
|
||||||
mkdir sol
|
mkdir sol
|
||||||
# create from a combined json from the supplied solidity contracts.
|
# create from a combined json from the supplied solidity contracts.
|
||||||
export_command=("${SOLC}" --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --optimize --via-ir --pretty-json --json-indent 4 --no-optimize-yul "${input_files[@]}" -o sol/)
|
export_command=("${SOLC}" --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --optimize --via-ir --pretty-json --json-indent 4 --no-optimize-yul "${input_files[@]}" -o sol)
|
||||||
run_solc --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --optimize --via-ir --pretty-json --json-indent 4 "${input_files[@]}" --no-optimize-yul -o sol/
|
run_solc --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --optimize --via-ir --pretty-json --json-indent 4 "${input_files[@]}" --no-optimize-yul -o sol
|
||||||
mkdir input
|
mkdir input
|
||||||
|
|
||||||
# save the original supplied solidity contract sources for potential debugging purposes.
|
# save the original supplied solidity contract sources for potential debugging purposes.
|
||||||
@ -284,7 +284,7 @@ function test_evmjson_via_ir_and_yul_import_export
|
|||||||
cat "${file}" >> "input/$(basename "${file}")"
|
cat "${file}" >> "input/$(basename "${file}")"
|
||||||
done
|
done
|
||||||
# split the combined json into different files.
|
# split the combined json into different files.
|
||||||
split_combined_json sol/combined.json sol/
|
split_combined_json sol/combined.json sol
|
||||||
|
|
||||||
# iterate through all yul files.
|
# iterate through all yul files.
|
||||||
for yulfile in yul/*
|
for yulfile in yul/*
|
||||||
@ -376,9 +376,9 @@ function test_evmjson_sol_import_export
|
|||||||
# create from a combined json from the supplied solidity contracts.
|
# create from a combined json from the supplied solidity contracts.
|
||||||
local export_command
|
local export_command
|
||||||
local import_command
|
local import_command
|
||||||
export_command=("${SOLC}" --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --pretty-json --json-indent 4 "${input_files[@]}" -o sol/)
|
export_command=("${SOLC}" --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --pretty-json --json-indent 4 "${input_files[@]}" -o sol)
|
||||||
|
|
||||||
run_solc --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --pretty-json --json-indent 4 "${input_files[@]}" -o sol/
|
run_solc --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --pretty-json --json-indent 4 "${input_files[@]}" -o sol
|
||||||
mkdir input
|
mkdir input
|
||||||
# save the original supplied solidity contract sources for potential debugging purposes.
|
# save the original supplied solidity contract sources for potential debugging purposes.
|
||||||
for file in "${input_files[@]}"
|
for file in "${input_files[@]}"
|
||||||
@ -386,7 +386,7 @@ function test_evmjson_sol_import_export
|
|||||||
cat "${file}" >> "input/$(basename "${file}")"
|
cat "${file}" >> "input/$(basename "${file}")"
|
||||||
done
|
done
|
||||||
# split the combined json into different files.
|
# split the combined json into different files.
|
||||||
split_combined_json sol/combined.json sol/
|
split_combined_json sol/combined.json sol
|
||||||
|
|
||||||
mkdir -p imported-from-sol
|
mkdir -p imported-from-sol
|
||||||
for file in sol/*.asm
|
for file in sol/*.asm
|
||||||
@ -395,7 +395,7 @@ function test_evmjson_sol_import_export
|
|||||||
# import_command will just contain the last file in sol/*.asm - but it's still a good starting point ;)
|
# import_command will just contain the last file in sol/*.asm - but it's still a good starting point ;)
|
||||||
import_command=("${SOLC}" --import-ast --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --pretty-json --json-indent 4 --import-asm-json "${file}")
|
import_command=("${SOLC}" --import-ast --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --pretty-json --json-indent 4 --import-asm-json "${file}")
|
||||||
run_solc_store_stdout "imported-from-sol/combined.json" --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --pretty-json --json-indent 4 --import-asm-json "${file}"
|
run_solc_store_stdout "imported-from-sol/combined.json" --combined-json "bin,bin-runtime,opcodes,asm,srcmap,srcmap-runtime" --pretty-json --json-indent 4 --import-asm-json "${file}"
|
||||||
split_combined_json imported-from-sol/combined.json imported-from-sol/ "${name}"
|
split_combined_json imported-from-sol/combined.json imported-from-sol "${name}"
|
||||||
done
|
done
|
||||||
|
|
||||||
for file in sol/*
|
for file in sol/*
|
||||||
@ -516,7 +516,7 @@ function test_import_export_equivalence {
|
|||||||
function test_evmjson_import_from_yul_export
|
function test_evmjson_import_from_yul_export
|
||||||
{
|
{
|
||||||
local files="${*}"
|
local files="${*}"
|
||||||
for yulfile in $files
|
for yulfile in ${files}
|
||||||
do
|
do
|
||||||
local export_command
|
local export_command
|
||||||
local import_command
|
local import_command
|
||||||
@ -534,9 +534,9 @@ function test_evmjson_import_from_yul_export
|
|||||||
# if yul file got compiled with success.
|
# if yul file got compiled with success.
|
||||||
if (( solc_return_code == 0 ))
|
if (( solc_return_code == 0 ))
|
||||||
then
|
then
|
||||||
yul_bin="$(basename "$yulfile").bin"
|
yul_bin="$(basename "${yulfile}").bin"
|
||||||
yul_json="$(basename "$yulfile").asm.json"
|
yul_json="$(basename "${yulfile}").asm.json"
|
||||||
echo "$output" > "${yul_bin}"
|
echo "${output}" > "${yul_bin}"
|
||||||
# remove all lines starting with '=======' and 'Binary representation:'.
|
# remove all lines starting with '=======' and 'Binary representation:'.
|
||||||
grep -v -e '^=======' -e '^Binary representation:' "${yul_bin}" > tmpfile && mv tmpfile "${yul_bin}"
|
grep -v -e '^=======' -e '^Binary representation:' "${yul_bin}" > tmpfile && mv tmpfile "${yul_bin}"
|
||||||
# remove all white-spaces. we only want the binary.
|
# remove all white-spaces. we only want the binary.
|
||||||
|
Loading…
Reference in New Issue
Block a user