selectors-must-be-different.dot 6.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. strict digraph "tests/contract_testcases/solana/selectors-must-be-different.sol" {
  2. contract [label="contract c\ntests/contract_testcases/solana/selectors-must-be-different.sol:1:1-10:2"]
  3. f1 [label="function f1\ncontract: c\ntests/contract_testcases/solana/selectors-must-be-different.sol:3:2-22\nsignature f1()\nvisibility public\nmutability nonpayable\nselector 01"]
  4. f2 [label="function f2\ncontract: c\ntests/contract_testcases/solana/selectors-must-be-different.sol:6:2-22\nsignature f2()\nvisibility public\nmutability nonpayable\nselector 01"]
  5. f3 [label="function f3\ncontract: c\ntests/contract_testcases/solana/selectors-must-be-different.sol:9:2-22\nsignature f3()\nvisibility public\nmutability nonpayable\nselector 01"]
  6. contract_5 [label="contract d\ntests/contract_testcases/solana/selectors-must-be-different.sol:12:1-18:2"]
  7. var [label="variable c\nvisibility public\ntests/contract_testcases/solana/selectors-must-be-different.sol:13:2-14"]
  8. c [label="function c\ncontract: d\ntests/contract_testcases/solana/selectors-must-be-different.sol:13:13-14\nsignature c()\nvisibility public\nmutability view"]
  9. returns [label="returns\nint256 "]
  10. return [label="return\nimplicit"]
  11. storage_load [label="storage load int256\nimplicit"]
  12. storage_var [label="storage variable\nd.c\nint256 storage\nimplicit"]
  13. f1_12 [label="function f1\ncontract: d\ntests/contract_testcases/solana/selectors-must-be-different.sol:17:2-22\nsignature f1()\nvisibility public\nmutability nonpayable\nselector c3da42b8"]
  14. contract_13 [label="contract e\ntests/contract_testcases/solana/selectors-must-be-different.sol:20:1-24:2"]
  15. f1_14 [label="function f1\ncontract: e\ntests/contract_testcases/solana/selectors-must-be-different.sol:23:2-22\nsignature f1()\nvisibility public\nmutability nonpayable\nselector 01"]
  16. contract_15 [label="contract f\ntests/contract_testcases/solana/selectors-must-be-different.sol:26:1-33:2"]
  17. f1_16 [label="function f1\ncontract: f\ntests/contract_testcases/solana/selectors-must-be-different.sol:29:2-22\nsignature f1()\nvisibility public\nmutability nonpayable\nselector 41424344"]
  18. f2_17 [label="function f2\ncontract: f\ntests/contract_testcases/solana/selectors-must-be-different.sol:31:2-22\nsignature f2()\nvisibility public\nmutability nonpayable\nselector 41424344"]
  19. f3_18 [label="function f3\ncontract: f\ntests/contract_testcases/solana/selectors-must-be-different.sol:32:2-22\nsignature f3()\nvisibility public\nmutability nonpayable"]
  20. contract_19 [label="contract g\ntests/contract_testcases/solana/selectors-must-be-different.sol:35:1-40:2"]
  21. f1_20 [label="function f1\ncontract: g\ntests/contract_testcases/solana/selectors-must-be-different.sol:36:2-22\nsignature f1()\nvisibility public\nmutability nonpayable"]
  22. f3_21 [label="function f3\ncontract: g\ntests/contract_testcases/solana/selectors-must-be-different.sol:39:2-22\nsignature f3()\nvisibility public\nmutability nonpayable\nselector c27fc305"]
  23. diagnostic [label="found abstract contract 'c'\nlevel Debug\ntests/contract_testcases/solana/selectors-must-be-different.sol:1:1-10:2"]
  24. diagnostic_24 [label="function 'f2' selector is the same as function 'f1'\nlevel Error\ntests/contract_testcases/solana/selectors-must-be-different.sol:6:2-22"]
  25. note [label="definition of function 'f1'\ntests/contract_testcases/solana/selectors-must-be-different.sol:3:2-22"]
  26. diagnostic_26 [label="function 'f3' selector is the same as function 'f1'\nlevel Error\ntests/contract_testcases/solana/selectors-must-be-different.sol:9:2-22"]
  27. note_27 [label="definition of function 'f1'\ntests/contract_testcases/solana/selectors-must-be-different.sol:3:2-22"]
  28. diagnostic_28 [label="found contract 'd'\nlevel Debug\ntests/contract_testcases/solana/selectors-must-be-different.sol:12:1-18:2"]
  29. diagnostic_29 [label="c is already defined as a contract name\nlevel Warning\ntests/contract_testcases/solana/selectors-must-be-different.sol:13:13-14"]
  30. note_30 [label="location of previous definition\ntests/contract_testcases/solana/selectors-must-be-different.sol:1:1-10:2"]
  31. diagnostic_31 [label="function 'f1' selector is the same as function 'c'\nlevel Error\ntests/contract_testcases/solana/selectors-must-be-different.sol:17:2-22"]
  32. note_32 [label="definition of function 'c'\ntests/contract_testcases/solana/selectors-must-be-different.sol:13:13-14"]
  33. diagnostic_33 [label="found contract 'e'\nlevel Debug\ntests/contract_testcases/solana/selectors-must-be-different.sol:20:1-24:2"]
  34. diagnostic_34 [label="function 'f1' selector must be 4 bytes rather than 1 bytes\nlevel Error\ntests/contract_testcases/solana/selectors-must-be-different.sol:22:2-16"]
  35. diagnostic_35 [label="found contract 'f'\nlevel Debug\ntests/contract_testcases/solana/selectors-must-be-different.sol:26:1-33:2"]
  36. diagnostic_36 [label="function 'f2' selector is the same as function 'f1'\nlevel Error\ntests/contract_testcases/solana/selectors-must-be-different.sol:31:2-22"]
  37. note_37 [label="definition of function 'f1'\ntests/contract_testcases/solana/selectors-must-be-different.sol:29:2-22"]
  38. diagnostic_38 [label="found contract 'g'\nlevel Debug\ntests/contract_testcases/solana/selectors-must-be-different.sol:35:1-40:2"]
  39. diagnostic_39 [label="function 'f3' selector is the same as function 'f1'\nlevel Error\ntests/contract_testcases/solana/selectors-must-be-different.sol:39:2-22"]
  40. note_40 [label="definition of function 'f1'\ntests/contract_testcases/solana/selectors-must-be-different.sol:36:2-22"]
  41. contracts -> contract
  42. contract -> f1 [label="function"]
  43. contract -> f2 [label="function"]
  44. contract -> f3 [label="function"]
  45. contracts -> contract_5
  46. contract_5 -> var [label="variable"]
  47. contract_5 -> c [label="function"]
  48. c -> returns [label="returns"]
  49. c -> return [label="body"]
  50. return -> storage_load [label="expr"]
  51. storage_load -> storage_var [label="expr"]
  52. contract_5 -> f1_12 [label="function"]
  53. contracts -> contract_13
  54. contract_13 -> f1_14 [label="function"]
  55. contracts -> contract_15
  56. contract_15 -> f1_16 [label="function"]
  57. contract_15 -> f2_17 [label="function"]
  58. contract_15 -> f3_18 [label="function"]
  59. contracts -> contract_19
  60. contract_19 -> f1_20 [label="function"]
  61. contract_19 -> f3_21 [label="function"]
  62. diagnostics -> diagnostic [label="Debug"]
  63. diagnostics -> diagnostic_24 [label="Error"]
  64. diagnostic_24 -> note [label="note"]
  65. diagnostics -> diagnostic_26 [label="Error"]
  66. diagnostic_26 -> note_27 [label="note"]
  67. diagnostics -> diagnostic_28 [label="Debug"]
  68. diagnostics -> diagnostic_29 [label="Warning"]
  69. diagnostic_29 -> note_30 [label="note"]
  70. diagnostics -> diagnostic_31 [label="Error"]
  71. diagnostic_31 -> note_32 [label="note"]
  72. diagnostics -> diagnostic_33 [label="Debug"]
  73. diagnostics -> diagnostic_34 [label="Error"]
  74. diagnostics -> diagnostic_35 [label="Debug"]
  75. diagnostics -> diagnostic_36 [label="Error"]
  76. diagnostic_36 -> note_37 [label="note"]
  77. diagnostics -> diagnostic_38 [label="Debug"]
  78. diagnostics -> diagnostic_39 [label="Error"]
  79. diagnostic_39 -> note_40 [label="note"]
  80. }