|
|
@@ -30,139 +30,136 @@ strict digraph "tests/contract_testcases/solana/issues678.sol" {
|
|
|
zero_ext [label="zero extend uint256\ntests/contract_testcases/solana/issues678.sol:22:30-44"]
|
|
|
array_length_32 [label="array length uint32\nelement struct Shares.Share\ntests/contract_testcases/solana/issues678.sol:22:38-44"]
|
|
|
storage_var_33 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:22:30-37"]
|
|
|
- expr_34 [label="expression\ntests/contract_testcases/solana/issues678.sol:22:46-49"]
|
|
|
post_increment [label="post increment\nuint256\ntests/contract_testcases/solana/issues678.sol:22:46-49"]
|
|
|
- variable_36 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:22:46-47"]
|
|
|
- expr_37 [label="expression\ntests/contract_testcases/solana/issues678.sol:23:13-50"]
|
|
|
+ variable_35 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:22:46-47"]
|
|
|
+ expr_36 [label="expression\ntests/contract_testcases/solana/issues678.sol:23:13-50"]
|
|
|
assign [label="assign\naddress\ntests/contract_testcases/solana/issues678.sol:23:13-50"]
|
|
|
subscript [label="subscript address[]\ntests/contract_testcases/solana/issues678.sol:23:13-26"]
|
|
|
- variable_40 [label="variable: retAddress\naddress[]\ntests/contract_testcases/solana/issues678.sol:23:13-23"]
|
|
|
- variable_41 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:23:24-25"]
|
|
|
+ variable_39 [label="variable: retAddress\naddress[]\ntests/contract_testcases/solana/issues678.sol:23:13-23"]
|
|
|
+ variable_40 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:23:24-25"]
|
|
|
cast [label="cast address\ntests/contract_testcases/solana/issues678.sol:23:29-50"]
|
|
|
storage_load [label="storage load address payable\ntests/contract_testcases/solana/issues678.sol:23:29-50"]
|
|
|
structmember [label="struct member #0 address payable storage\ntests/contract_testcases/solana/issues678.sol:23:40-50"]
|
|
|
- subscript_45 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:23:29-39"]
|
|
|
- storage_var_46 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:23:29-36"]
|
|
|
- variable_47 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:23:37-38"]
|
|
|
- expr_48 [label="expression\ntests/contract_testcases/solana/issues678.sol:24:13-44"]
|
|
|
- assign_49 [label="assign\nuint256\ntests/contract_testcases/solana/issues678.sol:24:13-44"]
|
|
|
- subscript_50 [label="subscript uint256[]\ntests/contract_testcases/solana/issues678.sol:24:13-24"]
|
|
|
- variable_51 [label="variable: retShare\nuint256[]\ntests/contract_testcases/solana/issues678.sol:24:13-21"]
|
|
|
- variable_52 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:24:22-23"]
|
|
|
- storage_load_53 [label="storage load uint256\ntests/contract_testcases/solana/issues678.sol:24:27-44"]
|
|
|
- structmember_54 [label="struct member #1 uint256 storage\ntests/contract_testcases/solana/issues678.sol:24:38-44"]
|
|
|
- subscript_55 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:24:27-37"]
|
|
|
- storage_var_56 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:24:27-34"]
|
|
|
- variable_57 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:24:35-36"]
|
|
|
+ subscript_44 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:23:29-39"]
|
|
|
+ storage_var_45 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:23:29-36"]
|
|
|
+ variable_46 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:23:37-38"]
|
|
|
+ expr_47 [label="expression\ntests/contract_testcases/solana/issues678.sol:24:13-44"]
|
|
|
+ assign_48 [label="assign\nuint256\ntests/contract_testcases/solana/issues678.sol:24:13-44"]
|
|
|
+ subscript_49 [label="subscript uint256[]\ntests/contract_testcases/solana/issues678.sol:24:13-24"]
|
|
|
+ variable_50 [label="variable: retShare\nuint256[]\ntests/contract_testcases/solana/issues678.sol:24:13-21"]
|
|
|
+ variable_51 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:24:22-23"]
|
|
|
+ storage_load_52 [label="storage load uint256\ntests/contract_testcases/solana/issues678.sol:24:27-44"]
|
|
|
+ structmember_53 [label="struct member #1 uint256 storage\ntests/contract_testcases/solana/issues678.sol:24:38-44"]
|
|
|
+ subscript_54 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:24:27-37"]
|
|
|
+ storage_var_55 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:24:27-34"]
|
|
|
+ variable_56 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:24:35-36"]
|
|
|
return [label="return\ntests/contract_testcases/solana/issues678.sol:26:9-38"]
|
|
|
list [label="list\ntests/contract_testcases/solana/issues678.sol:26:9-38"]
|
|
|
- variable_60 [label="variable: retAddress\naddress[]\ntests/contract_testcases/solana/issues678.sol:26:17-27"]
|
|
|
- variable_61 [label="variable: retShare\nuint256[]\ntests/contract_testcases/solana/issues678.sol:26:29-37"]
|
|
|
+ variable_59 [label="variable: retAddress\naddress[]\ntests/contract_testcases/solana/issues678.sol:26:17-27"]
|
|
|
+ variable_60 [label="variable: retShare\nuint256[]\ntests/contract_testcases/solana/issues678.sol:26:29-37"]
|
|
|
_senderIsAShareOwner [label="function _senderIsAShareOwner\ncontract: Shares\ntests/contract_testcases/solana/issues678.sol:29:5-78\nsignature _senderIsAShareOwner(bytes32)\nvisibility private\nmutability view"]
|
|
|
- parameters_63 [label="parameters\naddress sender"]
|
|
|
- returns_64 [label="returns\nbool "]
|
|
|
- for_65 [label="for\ntests/contract_testcases/solana/issues678.sol:30:9-34:10"]
|
|
|
- var_decl_66 [label="variable decl uint256 i\ntests/contract_testcases/solana/issues678.sol:30:14-24"]
|
|
|
- number_literal_67 [label="uint256 literal: 0\ntests/contract_testcases/solana/issues678.sol:30:23-24"]
|
|
|
- less_68 [label="less\ntests/contract_testcases/solana/issues678.sol:30:26-44"]
|
|
|
- variable_69 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:30:26-27"]
|
|
|
- zero_ext_70 [label="zero extend uint256\ntests/contract_testcases/solana/issues678.sol:30:30-44"]
|
|
|
- array_length_71 [label="array length uint32\nelement struct Shares.Share\ntests/contract_testcases/solana/issues678.sol:30:38-44"]
|
|
|
- storage_var_72 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:30:30-37"]
|
|
|
- expr_73 [label="expression\ntests/contract_testcases/solana/issues678.sol:30:46-49"]
|
|
|
- post_increment_74 [label="post increment\nuint256\ntests/contract_testcases/solana/issues678.sol:30:46-49"]
|
|
|
- variable_75 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:30:46-47"]
|
|
|
+ parameters_62 [label="parameters\naddress sender"]
|
|
|
+ returns_63 [label="returns\nbool "]
|
|
|
+ for_64 [label="for\ntests/contract_testcases/solana/issues678.sol:30:9-34:10"]
|
|
|
+ var_decl_65 [label="variable decl uint256 i\ntests/contract_testcases/solana/issues678.sol:30:14-24"]
|
|
|
+ number_literal_66 [label="uint256 literal: 0\ntests/contract_testcases/solana/issues678.sol:30:23-24"]
|
|
|
+ less_67 [label="less\ntests/contract_testcases/solana/issues678.sol:30:26-44"]
|
|
|
+ variable_68 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:30:26-27"]
|
|
|
+ zero_ext_69 [label="zero extend uint256\ntests/contract_testcases/solana/issues678.sol:30:30-44"]
|
|
|
+ array_length_70 [label="array length uint32\nelement struct Shares.Share\ntests/contract_testcases/solana/issues678.sol:30:38-44"]
|
|
|
+ storage_var_71 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:30:30-37"]
|
|
|
+ post_increment_72 [label="post increment\nuint256\ntests/contract_testcases/solana/issues678.sol:30:46-49"]
|
|
|
+ variable_73 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:30:46-47"]
|
|
|
if [label="if\ntests/contract_testcases/solana/issues678.sol:31:13-33:14"]
|
|
|
equal [label="equal\ntests/contract_testcases/solana/issues678.sol:31:17-48"]
|
|
|
- cast_78 [label="cast address\ntests/contract_testcases/solana/issues678.sol:31:28-38"]
|
|
|
- storage_load_79 [label="storage load address payable\ntests/contract_testcases/solana/issues678.sol:31:28-38"]
|
|
|
- structmember_80 [label="struct member #0 address payable storage\ntests/contract_testcases/solana/issues678.sol:31:28-38"]
|
|
|
- subscript_81 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:31:17-27"]
|
|
|
- storage_var_82 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:31:17-24"]
|
|
|
- variable_83 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:31:25-26"]
|
|
|
- variable_84 [label="variable: sender\naddress\ntests/contract_testcases/solana/issues678.sol:31:42-48"]
|
|
|
- return_85 [label="return\ntests/contract_testcases/solana/issues678.sol:32:17-28"]
|
|
|
+ cast_76 [label="cast address\ntests/contract_testcases/solana/issues678.sol:31:28-38"]
|
|
|
+ storage_load_77 [label="storage load address payable\ntests/contract_testcases/solana/issues678.sol:31:28-38"]
|
|
|
+ structmember_78 [label="struct member #0 address payable storage\ntests/contract_testcases/solana/issues678.sol:31:28-38"]
|
|
|
+ subscript_79 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:31:17-27"]
|
|
|
+ storage_var_80 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:31:17-24"]
|
|
|
+ variable_81 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:31:25-26"]
|
|
|
+ variable_82 [label="variable: sender\naddress\ntests/contract_testcases/solana/issues678.sol:31:42-48"]
|
|
|
+ return_83 [label="return\ntests/contract_testcases/solana/issues678.sol:32:17-28"]
|
|
|
bool_literal [label="bool literal: true\ntests/contract_testcases/solana/issues678.sol:32:24-28"]
|
|
|
- return_87 [label="return\ntests/contract_testcases/solana/issues678.sol:35:9-21"]
|
|
|
- bool_literal_88 [label="bool literal: false\ntests/contract_testcases/solana/issues678.sol:35:16-21"]
|
|
|
+ return_85 [label="return\ntests/contract_testcases/solana/issues678.sol:35:9-21"]
|
|
|
+ bool_literal_86 [label="bool literal: false\ntests/contract_testcases/solana/issues678.sol:35:16-21"]
|
|
|
withdraw [label="function withdraw\ncontract: Shares\ntests/contract_testcases/solana/issues678.sol:41:5-47\nsignature withdraw(bytes32)\nvisibility external\nmutability nonpayable"]
|
|
|
- tags_90 [label="dev: Allow a share owner to retrieve his money. It empty the money contained inside of the smart contract to give it to owners."]
|
|
|
- parameters_91 [label="parameters\naddress sender"]
|
|
|
- expr_92 [label="expression\ntests/contract_testcases/solana/issues678.sol:42:9-97"]
|
|
|
- builtins_93 [label="builtin Require\ntests/contract_testcases/solana/issues678.sol:42:9-16"]
|
|
|
+ tags_88 [label="dev: Allow a share owner to retrieve his money. It empty the money contained inside of the smart contract to give it to owners."]
|
|
|
+ parameters_89 [label="parameters\naddress sender"]
|
|
|
+ expr_90 [label="expression\ntests/contract_testcases/solana/issues678.sol:42:9-97"]
|
|
|
+ builtins_91 [label="builtin Require\ntests/contract_testcases/solana/issues678.sol:42:9-16"]
|
|
|
call_internal_function [label="call internal function\ntests/contract_testcases/solana/issues678.sol:42:17-45"]
|
|
|
internal_function [label="function(address) internal view returns (bool)\nShares._senderIsAShareOwner\ntests/contract_testcases/solana/issues678.sol:42:17-45"]
|
|
|
- variable_96 [label="variable: sender\naddress\ntests/contract_testcases/solana/issues678.sol:42:38-44"]
|
|
|
- alloc_array_97 [label="alloc array string\ninitializer: 596f752063616e277420776974686472617720696620796f7520617265206e6f742061207368617265206f776e6572\ntests/contract_testcases/solana/issues678.sol:42:47-96"]
|
|
|
- number_literal_98 [label="uint32 literal: 47\ntests/contract_testcases/solana/issues678.sol:42:47-96"]
|
|
|
- var_decl_99 [label="variable decl uint256 curr_balance\ntests/contract_testcases/solana/issues678.sol:43:9-50"]
|
|
|
+ variable_94 [label="variable: sender\naddress\ntests/contract_testcases/solana/issues678.sol:42:38-44"]
|
|
|
+ alloc_array_95 [label="alloc array string\ninitializer: 596f752063616e277420776974686472617720696620796f7520617265206e6f742061207368617265206f776e6572\ntests/contract_testcases/solana/issues678.sol:42:47-96"]
|
|
|
+ number_literal_96 [label="uint32 literal: 47\ntests/contract_testcases/solana/issues678.sol:42:47-96"]
|
|
|
+ var_decl_97 [label="variable decl uint256 curr_balance\ntests/contract_testcases/solana/issues678.sol:43:9-50"]
|
|
|
sign_ext [label="sign extend uint256\ntests/contract_testcases/solana/issues678.sol:43:29-50"]
|
|
|
- builtins_101 [label="builtin Balance\ntests/contract_testcases/solana/issues678.sol:43:29-50"]
|
|
|
- cast_102 [label="cast address\ntests/contract_testcases/solana/issues678.sol:43:29-42"]
|
|
|
- builtins_103 [label="builtin GetAddress\ntests/contract_testcases/solana/issues678.sol:43:37-41"]
|
|
|
- expr_104 [label="expression\ntests/contract_testcases/solana/issues678.sol:44:9-66"]
|
|
|
- builtins_105 [label="builtin Require\ntests/contract_testcases/solana/issues678.sol:44:9-16"]
|
|
|
+ builtins_99 [label="builtin Balance\ntests/contract_testcases/solana/issues678.sol:43:29-50"]
|
|
|
+ cast_100 [label="cast address\ntests/contract_testcases/solana/issues678.sol:43:29-42"]
|
|
|
+ builtins_101 [label="builtin GetAddress\ntests/contract_testcases/solana/issues678.sol:43:37-41"]
|
|
|
+ expr_102 [label="expression\ntests/contract_testcases/solana/issues678.sol:44:9-66"]
|
|
|
+ builtins_103 [label="builtin Require\ntests/contract_testcases/solana/issues678.sol:44:9-16"]
|
|
|
more [label="more\ntests/contract_testcases/solana/issues678.sol:44:17-33"]
|
|
|
- variable_107 [label="variable: curr_balance\nuint256\ntests/contract_testcases/solana/issues678.sol:44:17-29"]
|
|
|
- number_literal_108 [label="uint256 literal: 0\ntests/contract_testcases/solana/issues678.sol:44:32-33"]
|
|
|
- alloc_array_109 [label="alloc array string\ninitializer: 5468657265206973206e6f7468696e6720746f207769746864726177\ntests/contract_testcases/solana/issues678.sol:44:35-65"]
|
|
|
- number_literal_110 [label="uint32 literal: 28\ntests/contract_testcases/solana/issues678.sol:44:35-65"]
|
|
|
- for_111 [label="for\ntests/contract_testcases/solana/issues678.sol:45:9-49:10"]
|
|
|
- var_decl_112 [label="variable decl uint256 i\ntests/contract_testcases/solana/issues678.sol:45:14-24"]
|
|
|
- number_literal_113 [label="uint256 literal: 0\ntests/contract_testcases/solana/issues678.sol:45:23-24"]
|
|
|
- less_114 [label="less\ntests/contract_testcases/solana/issues678.sol:45:26-44"]
|
|
|
- variable_115 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:45:26-27"]
|
|
|
- zero_ext_116 [label="zero extend uint256\ntests/contract_testcases/solana/issues678.sol:45:30-44"]
|
|
|
- array_length_117 [label="array length uint32\nelement struct Shares.Share\ntests/contract_testcases/solana/issues678.sol:45:38-44"]
|
|
|
- storage_var_118 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:45:30-37"]
|
|
|
- expr_119 [label="expression\ntests/contract_testcases/solana/issues678.sol:45:46-49"]
|
|
|
- post_increment_120 [label="post increment\nuint256\ntests/contract_testcases/solana/issues678.sol:45:46-49"]
|
|
|
- variable_121 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:45:46-47"]
|
|
|
- var_decl_122 [label="variable decl uint256 to_transfer\ntests/contract_testcases/solana/issues678.sol:46:13-71"]
|
|
|
+ variable_105 [label="variable: curr_balance\nuint256\ntests/contract_testcases/solana/issues678.sol:44:17-29"]
|
|
|
+ number_literal_106 [label="uint256 literal: 0\ntests/contract_testcases/solana/issues678.sol:44:32-33"]
|
|
|
+ alloc_array_107 [label="alloc array string\ninitializer: 5468657265206973206e6f7468696e6720746f207769746864726177\ntests/contract_testcases/solana/issues678.sol:44:35-65"]
|
|
|
+ number_literal_108 [label="uint32 literal: 28\ntests/contract_testcases/solana/issues678.sol:44:35-65"]
|
|
|
+ for_109 [label="for\ntests/contract_testcases/solana/issues678.sol:45:9-49:10"]
|
|
|
+ var_decl_110 [label="variable decl uint256 i\ntests/contract_testcases/solana/issues678.sol:45:14-24"]
|
|
|
+ number_literal_111 [label="uint256 literal: 0\ntests/contract_testcases/solana/issues678.sol:45:23-24"]
|
|
|
+ less_112 [label="less\ntests/contract_testcases/solana/issues678.sol:45:26-44"]
|
|
|
+ variable_113 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:45:26-27"]
|
|
|
+ zero_ext_114 [label="zero extend uint256\ntests/contract_testcases/solana/issues678.sol:45:30-44"]
|
|
|
+ array_length_115 [label="array length uint32\nelement struct Shares.Share\ntests/contract_testcases/solana/issues678.sol:45:38-44"]
|
|
|
+ storage_var_116 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:45:30-37"]
|
|
|
+ post_increment_117 [label="post increment\nuint256\ntests/contract_testcases/solana/issues678.sol:45:46-49"]
|
|
|
+ variable_118 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:45:46-47"]
|
|
|
+ var_decl_119 [label="variable decl uint256 to_transfer\ntests/contract_testcases/solana/issues678.sol:46:13-71"]
|
|
|
divide [label="divide\nuint256\ntests/contract_testcases/solana/issues678.sol:46:32-71"]
|
|
|
multiply [label="multiply\nuint256\ntests/contract_testcases/solana/issues678.sol:46:32-64"]
|
|
|
- variable_125 [label="variable: curr_balance\nuint256\ntests/contract_testcases/solana/issues678.sol:46:32-44"]
|
|
|
- storage_load_126 [label="storage load uint256\ntests/contract_testcases/solana/issues678.sol:46:47-64"]
|
|
|
- structmember_127 [label="struct member #1 uint256 storage\ntests/contract_testcases/solana/issues678.sol:46:58-64"]
|
|
|
- subscript_128 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:46:47-57"]
|
|
|
- storage_var_129 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:46:47-54"]
|
|
|
- variable_130 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:46:55-56"]
|
|
|
- number_literal_131 [label="uint256 literal: 1000\ntests/contract_testcases/solana/issues678.sol:46:67-71"]
|
|
|
- expr_132 [label="expression\ntests/contract_testcases/solana/issues678.sol:47:13-64"]
|
|
|
- builtins_133 [label="builtin PayableTransfer\ntests/contract_testcases/solana/issues678.sol:47:13-64"]
|
|
|
- storage_load_134 [label="storage load address payable\ntests/contract_testcases/solana/issues678.sol:47:24-34"]
|
|
|
- structmember_135 [label="struct member #0 address payable storage\ntests/contract_testcases/solana/issues678.sol:47:24-34"]
|
|
|
- subscript_136 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:47:13-23"]
|
|
|
- storage_var_137 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:47:13-20"]
|
|
|
- variable_138 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:47:21-22"]
|
|
|
- cast_139 [label="cast uint64\ntests/contract_testcases/solana/issues678.sol:47:44-63"]
|
|
|
+ variable_122 [label="variable: curr_balance\nuint256\ntests/contract_testcases/solana/issues678.sol:46:32-44"]
|
|
|
+ storage_load_123 [label="storage load uint256\ntests/contract_testcases/solana/issues678.sol:46:47-64"]
|
|
|
+ structmember_124 [label="struct member #1 uint256 storage\ntests/contract_testcases/solana/issues678.sol:46:58-64"]
|
|
|
+ subscript_125 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:46:47-57"]
|
|
|
+ storage_var_126 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:46:47-54"]
|
|
|
+ variable_127 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:46:55-56"]
|
|
|
+ number_literal_128 [label="uint256 literal: 1000\ntests/contract_testcases/solana/issues678.sol:46:67-71"]
|
|
|
+ expr_129 [label="expression\ntests/contract_testcases/solana/issues678.sol:47:13-64"]
|
|
|
+ builtins_130 [label="builtin PayableTransfer\ntests/contract_testcases/solana/issues678.sol:47:13-64"]
|
|
|
+ storage_load_131 [label="storage load address payable\ntests/contract_testcases/solana/issues678.sol:47:24-34"]
|
|
|
+ structmember_132 [label="struct member #0 address payable storage\ntests/contract_testcases/solana/issues678.sol:47:24-34"]
|
|
|
+ subscript_133 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:47:13-23"]
|
|
|
+ storage_var_134 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:47:13-20"]
|
|
|
+ variable_135 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:47:21-22"]
|
|
|
+ cast_136 [label="cast uint64\ntests/contract_testcases/solana/issues678.sol:47:44-63"]
|
|
|
trunc [label="truncate uint64\ntests/contract_testcases/solana/issues678.sol:47:44-63"]
|
|
|
- variable_141 [label="variable: to_transfer\nuint256\ntests/contract_testcases/solana/issues678.sol:47:51-62"]
|
|
|
+ variable_138 [label="variable: to_transfer\nuint256\ntests/contract_testcases/solana/issues678.sol:47:51-62"]
|
|
|
emit [label="emit\nevent Shares.Transfer\ntests/contract_testcases/solana/issues678.sol:48:13-76"]
|
|
|
- cast_143 [label="cast address\ntests/contract_testcases/solana/issues678.sol:48:38-48"]
|
|
|
- storage_load_144 [label="storage load address payable\ntests/contract_testcases/solana/issues678.sol:48:38-48"]
|
|
|
- structmember_145 [label="struct member #0 address payable storage\ntests/contract_testcases/solana/issues678.sol:48:38-48"]
|
|
|
- subscript_146 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:48:27-37"]
|
|
|
- storage_var_147 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:48:27-34"]
|
|
|
- variable_148 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:48:35-36"]
|
|
|
- variable_149 [label="variable: to_transfer\nuint256\ntests/contract_testcases/solana/issues678.sol:48:50-61"]
|
|
|
- variable_150 [label="variable: curr_balance\nuint256\ntests/contract_testcases/solana/issues678.sol:48:63-75"]
|
|
|
- if_151 [label="if\ntests/contract_testcases/solana/issues678.sol:50:9-54:10"]
|
|
|
- more_152 [label="more\ntests/contract_testcases/solana/issues678.sol:50:13-38"]
|
|
|
- cast_153 [label="cast uint64\ntests/contract_testcases/solana/issues678.sol:50:13-34"]
|
|
|
- builtins_154 [label="builtin Balance\ntests/contract_testcases/solana/issues678.sol:50:13-34"]
|
|
|
- cast_155 [label="cast address\ntests/contract_testcases/solana/issues678.sol:50:13-26"]
|
|
|
- builtins_156 [label="builtin GetAddress\ntests/contract_testcases/solana/issues678.sol:50:21-25"]
|
|
|
- number_literal_157 [label="uint64 literal: 0\ntests/contract_testcases/solana/issues678.sol:50:37-38"]
|
|
|
- expr_158 [label="expression\ntests/contract_testcases/solana/issues678.sol:53:13-60"]
|
|
|
- builtins_159 [label="builtin PayableTransfer\ntests/contract_testcases/solana/issues678.sol:53:13-60"]
|
|
|
- cast_160 [label="cast address payable\ntests/contract_testcases/solana/issues678.sol:53:13-28"]
|
|
|
- variable_161 [label="variable: sender\naddress\ntests/contract_testcases/solana/issues678.sol:53:21-27"]
|
|
|
- builtins_162 [label="builtin Balance\ntests/contract_testcases/solana/issues678.sol:53:38-59"]
|
|
|
- cast_163 [label="cast address\ntests/contract_testcases/solana/issues678.sol:53:38-51"]
|
|
|
- builtins_164 [label="builtin GetAddress\ntests/contract_testcases/solana/issues678.sol:53:46-50"]
|
|
|
+ cast_140 [label="cast address\ntests/contract_testcases/solana/issues678.sol:48:38-48"]
|
|
|
+ storage_load_141 [label="storage load address payable\ntests/contract_testcases/solana/issues678.sol:48:38-48"]
|
|
|
+ structmember_142 [label="struct member #0 address payable storage\ntests/contract_testcases/solana/issues678.sol:48:38-48"]
|
|
|
+ subscript_143 [label="subscript struct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:48:27-37"]
|
|
|
+ storage_var_144 [label="storage variable\nShares._shares\nstruct Shares.Share[] storage\ntests/contract_testcases/solana/issues678.sol:48:27-34"]
|
|
|
+ variable_145 [label="variable: i\nuint256\ntests/contract_testcases/solana/issues678.sol:48:35-36"]
|
|
|
+ variable_146 [label="variable: to_transfer\nuint256\ntests/contract_testcases/solana/issues678.sol:48:50-61"]
|
|
|
+ variable_147 [label="variable: curr_balance\nuint256\ntests/contract_testcases/solana/issues678.sol:48:63-75"]
|
|
|
+ if_148 [label="if\ntests/contract_testcases/solana/issues678.sol:50:9-54:10"]
|
|
|
+ more_149 [label="more\ntests/contract_testcases/solana/issues678.sol:50:13-38"]
|
|
|
+ cast_150 [label="cast uint64\ntests/contract_testcases/solana/issues678.sol:50:13-34"]
|
|
|
+ builtins_151 [label="builtin Balance\ntests/contract_testcases/solana/issues678.sol:50:13-34"]
|
|
|
+ cast_152 [label="cast address\ntests/contract_testcases/solana/issues678.sol:50:13-26"]
|
|
|
+ builtins_153 [label="builtin GetAddress\ntests/contract_testcases/solana/issues678.sol:50:21-25"]
|
|
|
+ number_literal_154 [label="uint64 literal: 0\ntests/contract_testcases/solana/issues678.sol:50:37-38"]
|
|
|
+ expr_155 [label="expression\ntests/contract_testcases/solana/issues678.sol:53:13-60"]
|
|
|
+ builtins_156 [label="builtin PayableTransfer\ntests/contract_testcases/solana/issues678.sol:53:13-60"]
|
|
|
+ cast_157 [label="cast address payable\ntests/contract_testcases/solana/issues678.sol:53:13-28"]
|
|
|
+ variable_158 [label="variable: sender\naddress\ntests/contract_testcases/solana/issues678.sol:53:21-27"]
|
|
|
+ builtins_159 [label="builtin Balance\ntests/contract_testcases/solana/issues678.sol:53:38-59"]
|
|
|
+ cast_160 [label="cast address\ntests/contract_testcases/solana/issues678.sol:53:38-51"]
|
|
|
+ builtins_161 [label="builtin GetAddress\ntests/contract_testcases/solana/issues678.sol:53:46-50"]
|
|
|
diagnostic [label="pragma 'solidity' is ignored\nlevel Debug\ntests/contract_testcases/solana/issues678.sol:2:1-23"]
|
|
|
- diagnostic_167 [label="found contract 'Shares'\nlevel Debug\ntests/contract_testcases/solana/issues678.sol:4:1-56:2"]
|
|
|
+ diagnostic_164 [label="found contract 'Shares'\nlevel Debug\ntests/contract_testcases/solana/issues678.sol:4:1-56:2"]
|
|
|
structs -> Share
|
|
|
events -> Transfer
|
|
|
contracts -> contract
|
|
|
@@ -194,137 +191,134 @@ strict digraph "tests/contract_testcases/solana/issues678.sol" {
|
|
|
less -> zero_ext [label="right"]
|
|
|
zero_ext -> array_length_32 [label="expr"]
|
|
|
array_length_32 -> storage_var_33 [label="array"]
|
|
|
- for -> expr_34 [label="next"]
|
|
|
- expr_34 -> post_increment [label="expr"]
|
|
|
- post_increment -> variable_36 [label="expr"]
|
|
|
- for -> expr_37 [label="body"]
|
|
|
- expr_37 -> assign [label="expr"]
|
|
|
+ for -> post_increment [label="next"]
|
|
|
+ post_increment -> variable_35 [label="expr"]
|
|
|
+ for -> expr_36 [label="body"]
|
|
|
+ expr_36 -> assign [label="expr"]
|
|
|
assign -> subscript [label="left"]
|
|
|
- subscript -> variable_40 [label="array"]
|
|
|
- subscript -> variable_41 [label="index"]
|
|
|
+ subscript -> variable_39 [label="array"]
|
|
|
+ subscript -> variable_40 [label="index"]
|
|
|
assign -> cast [label="right"]
|
|
|
cast -> storage_load [label="expr"]
|
|
|
storage_load -> structmember [label="expr"]
|
|
|
- structmember -> subscript_45 [label="var"]
|
|
|
- subscript_45 -> storage_var_46 [label="array"]
|
|
|
- subscript_45 -> variable_47 [label="index"]
|
|
|
- expr_37 -> expr_48 [label="next"]
|
|
|
- expr_48 -> assign_49 [label="expr"]
|
|
|
- assign_49 -> subscript_50 [label="left"]
|
|
|
- subscript_50 -> variable_51 [label="array"]
|
|
|
- subscript_50 -> variable_52 [label="index"]
|
|
|
- assign_49 -> storage_load_53 [label="right"]
|
|
|
- storage_load_53 -> structmember_54 [label="expr"]
|
|
|
- structmember_54 -> subscript_55 [label="var"]
|
|
|
- subscript_55 -> storage_var_56 [label="array"]
|
|
|
- subscript_55 -> variable_57 [label="index"]
|
|
|
+ structmember -> subscript_44 [label="var"]
|
|
|
+ subscript_44 -> storage_var_45 [label="array"]
|
|
|
+ subscript_44 -> variable_46 [label="index"]
|
|
|
+ expr_36 -> expr_47 [label="next"]
|
|
|
+ expr_47 -> assign_48 [label="expr"]
|
|
|
+ assign_48 -> subscript_49 [label="left"]
|
|
|
+ subscript_49 -> variable_50 [label="array"]
|
|
|
+ subscript_49 -> variable_51 [label="index"]
|
|
|
+ assign_48 -> storage_load_52 [label="right"]
|
|
|
+ storage_load_52 -> structmember_53 [label="expr"]
|
|
|
+ structmember_53 -> subscript_54 [label="var"]
|
|
|
+ subscript_54 -> storage_var_55 [label="array"]
|
|
|
+ subscript_54 -> variable_56 [label="index"]
|
|
|
for -> return [label="next"]
|
|
|
return -> list [label="expr"]
|
|
|
- list -> variable_60 [label="entry #0"]
|
|
|
- list -> variable_61 [label="entry #1"]
|
|
|
+ list -> variable_59 [label="entry #0"]
|
|
|
+ list -> variable_60 [label="entry #1"]
|
|
|
contract -> _senderIsAShareOwner [label="function"]
|
|
|
- _senderIsAShareOwner -> parameters_63 [label="parameters"]
|
|
|
- _senderIsAShareOwner -> returns_64 [label="returns"]
|
|
|
- _senderIsAShareOwner -> for_65 [label="body"]
|
|
|
- for_65 -> var_decl_66 [label="init"]
|
|
|
- var_decl_66 -> number_literal_67 [label="init"]
|
|
|
- for_65 -> less_68 [label="cond"]
|
|
|
- less_68 -> variable_69 [label="left"]
|
|
|
- less_68 -> zero_ext_70 [label="right"]
|
|
|
- zero_ext_70 -> array_length_71 [label="expr"]
|
|
|
- array_length_71 -> storage_var_72 [label="array"]
|
|
|
- for_65 -> expr_73 [label="next"]
|
|
|
- expr_73 -> post_increment_74 [label="expr"]
|
|
|
- post_increment_74 -> variable_75 [label="expr"]
|
|
|
- for_65 -> if [label="body"]
|
|
|
+ _senderIsAShareOwner -> parameters_62 [label="parameters"]
|
|
|
+ _senderIsAShareOwner -> returns_63 [label="returns"]
|
|
|
+ _senderIsAShareOwner -> for_64 [label="body"]
|
|
|
+ for_64 -> var_decl_65 [label="init"]
|
|
|
+ var_decl_65 -> number_literal_66 [label="init"]
|
|
|
+ for_64 -> less_67 [label="cond"]
|
|
|
+ less_67 -> variable_68 [label="left"]
|
|
|
+ less_67 -> zero_ext_69 [label="right"]
|
|
|
+ zero_ext_69 -> array_length_70 [label="expr"]
|
|
|
+ array_length_70 -> storage_var_71 [label="array"]
|
|
|
+ for_64 -> post_increment_72 [label="next"]
|
|
|
+ post_increment_72 -> variable_73 [label="expr"]
|
|
|
+ for_64 -> if [label="body"]
|
|
|
if -> equal [label="cond"]
|
|
|
- equal -> cast_78 [label="left"]
|
|
|
- cast_78 -> storage_load_79 [label="expr"]
|
|
|
- storage_load_79 -> structmember_80 [label="expr"]
|
|
|
- structmember_80 -> subscript_81 [label="var"]
|
|
|
- subscript_81 -> storage_var_82 [label="array"]
|
|
|
- subscript_81 -> variable_83 [label="index"]
|
|
|
- equal -> variable_84 [label="right"]
|
|
|
- if -> return_85 [label="then"]
|
|
|
- return_85 -> bool_literal [label="expr"]
|
|
|
- for_65 -> return_87 [label="next"]
|
|
|
- return_87 -> bool_literal_88 [label="expr"]
|
|
|
+ equal -> cast_76 [label="left"]
|
|
|
+ cast_76 -> storage_load_77 [label="expr"]
|
|
|
+ storage_load_77 -> structmember_78 [label="expr"]
|
|
|
+ structmember_78 -> subscript_79 [label="var"]
|
|
|
+ subscript_79 -> storage_var_80 [label="array"]
|
|
|
+ subscript_79 -> variable_81 [label="index"]
|
|
|
+ equal -> variable_82 [label="right"]
|
|
|
+ if -> return_83 [label="then"]
|
|
|
+ return_83 -> bool_literal [label="expr"]
|
|
|
+ for_64 -> return_85 [label="next"]
|
|
|
+ return_85 -> bool_literal_86 [label="expr"]
|
|
|
contract -> withdraw [label="function"]
|
|
|
- withdraw -> tags_90 [label="tags"]
|
|
|
- withdraw -> parameters_91 [label="parameters"]
|
|
|
- withdraw -> expr_92 [label="body"]
|
|
|
- expr_92 -> builtins_93 [label="expr"]
|
|
|
- builtins_93 -> call_internal_function [label="arg #0"]
|
|
|
+ withdraw -> tags_88 [label="tags"]
|
|
|
+ withdraw -> parameters_89 [label="parameters"]
|
|
|
+ withdraw -> expr_90 [label="body"]
|
|
|
+ expr_90 -> builtins_91 [label="expr"]
|
|
|
+ builtins_91 -> call_internal_function [label="arg #0"]
|
|
|
call_internal_function -> internal_function [label="function"]
|
|
|
- call_internal_function -> variable_96 [label="arg #0"]
|
|
|
- builtins_93 -> alloc_array_97 [label="arg #1"]
|
|
|
- alloc_array_97 -> number_literal_98 [label="length"]
|
|
|
- expr_92 -> var_decl_99 [label="next"]
|
|
|
- var_decl_99 -> sign_ext [label="init"]
|
|
|
- sign_ext -> builtins_101 [label="expr"]
|
|
|
- builtins_101 -> cast_102 [label="arg #0"]
|
|
|
- cast_102 -> builtins_103 [label="expr"]
|
|
|
- var_decl_99 -> expr_104 [label="next"]
|
|
|
- expr_104 -> builtins_105 [label="expr"]
|
|
|
- builtins_105 -> more [label="arg #0"]
|
|
|
- more -> variable_107 [label="left"]
|
|
|
- more -> number_literal_108 [label="right"]
|
|
|
- builtins_105 -> alloc_array_109 [label="arg #1"]
|
|
|
- alloc_array_109 -> number_literal_110 [label="length"]
|
|
|
- expr_104 -> for_111 [label="next"]
|
|
|
- for_111 -> var_decl_112 [label="init"]
|
|
|
- var_decl_112 -> number_literal_113 [label="init"]
|
|
|
- for_111 -> less_114 [label="cond"]
|
|
|
- less_114 -> variable_115 [label="left"]
|
|
|
- less_114 -> zero_ext_116 [label="right"]
|
|
|
- zero_ext_116 -> array_length_117 [label="expr"]
|
|
|
- array_length_117 -> storage_var_118 [label="array"]
|
|
|
- for_111 -> expr_119 [label="next"]
|
|
|
- expr_119 -> post_increment_120 [label="expr"]
|
|
|
- post_increment_120 -> variable_121 [label="expr"]
|
|
|
- for_111 -> var_decl_122 [label="body"]
|
|
|
- var_decl_122 -> divide [label="init"]
|
|
|
+ call_internal_function -> variable_94 [label="arg #0"]
|
|
|
+ builtins_91 -> alloc_array_95 [label="arg #1"]
|
|
|
+ alloc_array_95 -> number_literal_96 [label="length"]
|
|
|
+ expr_90 -> var_decl_97 [label="next"]
|
|
|
+ var_decl_97 -> sign_ext [label="init"]
|
|
|
+ sign_ext -> builtins_99 [label="expr"]
|
|
|
+ builtins_99 -> cast_100 [label="arg #0"]
|
|
|
+ cast_100 -> builtins_101 [label="expr"]
|
|
|
+ var_decl_97 -> expr_102 [label="next"]
|
|
|
+ expr_102 -> builtins_103 [label="expr"]
|
|
|
+ builtins_103 -> more [label="arg #0"]
|
|
|
+ more -> variable_105 [label="left"]
|
|
|
+ more -> number_literal_106 [label="right"]
|
|
|
+ builtins_103 -> alloc_array_107 [label="arg #1"]
|
|
|
+ alloc_array_107 -> number_literal_108 [label="length"]
|
|
|
+ expr_102 -> for_109 [label="next"]
|
|
|
+ for_109 -> var_decl_110 [label="init"]
|
|
|
+ var_decl_110 -> number_literal_111 [label="init"]
|
|
|
+ for_109 -> less_112 [label="cond"]
|
|
|
+ less_112 -> variable_113 [label="left"]
|
|
|
+ less_112 -> zero_ext_114 [label="right"]
|
|
|
+ zero_ext_114 -> array_length_115 [label="expr"]
|
|
|
+ array_length_115 -> storage_var_116 [label="array"]
|
|
|
+ for_109 -> post_increment_117 [label="next"]
|
|
|
+ post_increment_117 -> variable_118 [label="expr"]
|
|
|
+ for_109 -> var_decl_119 [label="body"]
|
|
|
+ var_decl_119 -> divide [label="init"]
|
|
|
divide -> multiply [label="left"]
|
|
|
- multiply -> variable_125 [label="left"]
|
|
|
- multiply -> storage_load_126 [label="right"]
|
|
|
- storage_load_126 -> structmember_127 [label="expr"]
|
|
|
- structmember_127 -> subscript_128 [label="var"]
|
|
|
- subscript_128 -> storage_var_129 [label="array"]
|
|
|
- subscript_128 -> variable_130 [label="index"]
|
|
|
- divide -> number_literal_131 [label="right"]
|
|
|
- var_decl_122 -> expr_132 [label="next"]
|
|
|
- expr_132 -> builtins_133 [label="expr"]
|
|
|
- builtins_133 -> storage_load_134 [label="arg #0"]
|
|
|
- storage_load_134 -> structmember_135 [label="expr"]
|
|
|
- structmember_135 -> subscript_136 [label="var"]
|
|
|
- subscript_136 -> storage_var_137 [label="array"]
|
|
|
- subscript_136 -> variable_138 [label="index"]
|
|
|
- builtins_133 -> cast_139 [label="arg #1"]
|
|
|
- cast_139 -> trunc [label="expr"]
|
|
|
- trunc -> variable_141 [label="expr"]
|
|
|
- expr_132 -> emit [label="next"]
|
|
|
- emit -> cast_143 [label="arg #0"]
|
|
|
- cast_143 -> storage_load_144 [label="expr"]
|
|
|
- storage_load_144 -> structmember_145 [label="expr"]
|
|
|
- structmember_145 -> subscript_146 [label="var"]
|
|
|
- subscript_146 -> storage_var_147 [label="array"]
|
|
|
- subscript_146 -> variable_148 [label="index"]
|
|
|
- emit -> variable_149 [label="arg #1"]
|
|
|
- emit -> variable_150 [label="arg #2"]
|
|
|
- for_111 -> if_151 [label="next"]
|
|
|
- if_151 -> more_152 [label="cond"]
|
|
|
- more_152 -> cast_153 [label="left"]
|
|
|
- cast_153 -> builtins_154 [label="expr"]
|
|
|
- builtins_154 -> cast_155 [label="arg #0"]
|
|
|
- cast_155 -> builtins_156 [label="expr"]
|
|
|
- more_152 -> number_literal_157 [label="right"]
|
|
|
- if_151 -> expr_158 [label="then"]
|
|
|
- expr_158 -> builtins_159 [label="expr"]
|
|
|
+ multiply -> variable_122 [label="left"]
|
|
|
+ multiply -> storage_load_123 [label="right"]
|
|
|
+ storage_load_123 -> structmember_124 [label="expr"]
|
|
|
+ structmember_124 -> subscript_125 [label="var"]
|
|
|
+ subscript_125 -> storage_var_126 [label="array"]
|
|
|
+ subscript_125 -> variable_127 [label="index"]
|
|
|
+ divide -> number_literal_128 [label="right"]
|
|
|
+ var_decl_119 -> expr_129 [label="next"]
|
|
|
+ expr_129 -> builtins_130 [label="expr"]
|
|
|
+ builtins_130 -> storage_load_131 [label="arg #0"]
|
|
|
+ storage_load_131 -> structmember_132 [label="expr"]
|
|
|
+ structmember_132 -> subscript_133 [label="var"]
|
|
|
+ subscript_133 -> storage_var_134 [label="array"]
|
|
|
+ subscript_133 -> variable_135 [label="index"]
|
|
|
+ builtins_130 -> cast_136 [label="arg #1"]
|
|
|
+ cast_136 -> trunc [label="expr"]
|
|
|
+ trunc -> variable_138 [label="expr"]
|
|
|
+ expr_129 -> emit [label="next"]
|
|
|
+ emit -> cast_140 [label="arg #0"]
|
|
|
+ cast_140 -> storage_load_141 [label="expr"]
|
|
|
+ storage_load_141 -> structmember_142 [label="expr"]
|
|
|
+ structmember_142 -> subscript_143 [label="var"]
|
|
|
+ subscript_143 -> storage_var_144 [label="array"]
|
|
|
+ subscript_143 -> variable_145 [label="index"]
|
|
|
+ emit -> variable_146 [label="arg #1"]
|
|
|
+ emit -> variable_147 [label="arg #2"]
|
|
|
+ for_109 -> if_148 [label="next"]
|
|
|
+ if_148 -> more_149 [label="cond"]
|
|
|
+ more_149 -> cast_150 [label="left"]
|
|
|
+ cast_150 -> builtins_151 [label="expr"]
|
|
|
+ builtins_151 -> cast_152 [label="arg #0"]
|
|
|
+ cast_152 -> builtins_153 [label="expr"]
|
|
|
+ more_149 -> number_literal_154 [label="right"]
|
|
|
+ if_148 -> expr_155 [label="then"]
|
|
|
+ expr_155 -> builtins_156 [label="expr"]
|
|
|
+ builtins_156 -> cast_157 [label="arg #0"]
|
|
|
+ cast_157 -> variable_158 [label="expr"]
|
|
|
+ builtins_156 -> builtins_159 [label="arg #1"]
|
|
|
builtins_159 -> cast_160 [label="arg #0"]
|
|
|
- cast_160 -> variable_161 [label="expr"]
|
|
|
- builtins_159 -> builtins_162 [label="arg #1"]
|
|
|
- builtins_162 -> cast_163 [label="arg #0"]
|
|
|
- cast_163 -> builtins_164 [label="expr"]
|
|
|
+ cast_160 -> builtins_161 [label="expr"]
|
|
|
diagnostics -> diagnostic [label="Debug"]
|
|
|
- diagnostics -> diagnostic_167 [label="Debug"]
|
|
|
+ diagnostics -> diagnostic_164 [label="Debug"]
|
|
|
}
|