multiple_override_02.dot 5.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. strict digraph "tests/contract_testcases/substrate/inheritance/multiple_override_02.sol" {
  2. contract [label="contract base\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:2:9-6:10"]
  3. base [label="base bar\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:2:26-29"]
  4. base_3 [label="base bar2\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:2:31-35"]
  5. base_4 [label="base bar3\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:2:37-41"]
  6. foo [label="function foo\ncontract: base\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:3:13-85\nsignature foo(uint64)\nvisibility internal\nmutability nonpayable\noverride bar\noverride bar2\noverride bar3"]
  7. parameters [label="parameters\nuint64 a"]
  8. returns [label="returns\nuint64 "]
  9. return [label="return\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:4:17-31"]
  10. add [label="add\nuint64\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:4:24-31"]
  11. variable [label="variable: a\nuint64\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:4:24-25"]
  12. number_literal [label="uint64 literal: 102\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:4:28-31"]
  13. contract_12 [label="contract bar\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:8:9-12:10"]
  14. foo_13 [label="function foo\ncontract: bar\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:9:13-69\nsignature foo(uint64)\nvisibility internal\nmutability nonpayable\nvirtual"]
  15. parameters_14 [label="parameters\nuint64 a"]
  16. returns_15 [label="returns\nuint64 "]
  17. return_16 [label="return\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:10:17-31"]
  18. add_17 [label="add\nuint64\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:10:24-31"]
  19. variable_18 [label="variable: a\nuint64\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:10:24-25"]
  20. number_literal_19 [label="uint64 literal: 102\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:10:28-31"]
  21. contract_20 [label="contract bar2\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:14:9-18:10"]
  22. foo_21 [label="function foo\ncontract: bar2\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:15:13-69\nsignature foo(uint64)\nvisibility internal\nmutability nonpayable\nvirtual"]
  23. parameters_22 [label="parameters\nuint64 a"]
  24. returns_23 [label="returns\nuint64 "]
  25. return_24 [label="return\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:16:17-31"]
  26. add_25 [label="add\nuint64\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:16:24-31"]
  27. variable_26 [label="variable: a\nuint64\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:16:24-25"]
  28. number_literal_27 [label="uint64 literal: 103\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:16:28-31"]
  29. contract_28 [label="contract bar3\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:20:9-24:10"]
  30. f [label="function f\ncontract: bar3\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:21:13-32\nsignature f()\nvisibility public\nmutability nonpayable"]
  31. diagnostic [label="found contract 'base'\nlevel Debug\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:2:9-6:10"]
  32. diagnostic_32 [label="function 'foo' includes extraneous overrides 'bar3', specify 'override(bar2,bar)'\nlevel Error\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:3:36-59"]
  33. diagnostic_33 [label="found contract 'bar'\nlevel Debug\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:8:9-12:10"]
  34. diagnostic_34 [label="found contract 'bar2'\nlevel Debug\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:14:9-18:10"]
  35. diagnostic_35 [label="found contract 'bar3'\nlevel Debug\ntests/contract_testcases/substrate/inheritance/multiple_override_02.sol:20:9-24:10"]
  36. contracts -> contract
  37. contract -> base [label="base"]
  38. contract -> base_3 [label="base"]
  39. contract -> base_4 [label="base"]
  40. contract -> foo [label="function"]
  41. foo -> parameters [label="parameters"]
  42. foo -> returns [label="returns"]
  43. foo -> return [label="body"]
  44. return -> add [label="expr"]
  45. add -> variable [label="left"]
  46. add -> number_literal [label="right"]
  47. contracts -> contract_12
  48. contract_12 -> foo_13 [label="function"]
  49. foo_13 -> parameters_14 [label="parameters"]
  50. foo_13 -> returns_15 [label="returns"]
  51. foo_13 -> return_16 [label="body"]
  52. return_16 -> add_17 [label="expr"]
  53. add_17 -> variable_18 [label="left"]
  54. add_17 -> number_literal_19 [label="right"]
  55. contracts -> contract_20
  56. contract_20 -> foo_21 [label="function"]
  57. foo_21 -> parameters_22 [label="parameters"]
  58. foo_21 -> returns_23 [label="returns"]
  59. foo_21 -> return_24 [label="body"]
  60. return_24 -> add_25 [label="expr"]
  61. add_25 -> variable_26 [label="left"]
  62. add_25 -> number_literal_27 [label="right"]
  63. contracts -> contract_28
  64. contract_28 -> f [label="function"]
  65. diagnostics -> diagnostic [label="Debug"]
  66. diagnostics -> diagnostic_32 [label="Error"]
  67. diagnostics -> diagnostic_33 [label="Debug"]
  68. diagnostics -> diagnostic_34 [label="Debug"]
  69. diagnostics -> diagnostic_35 [label="Debug"]
  70. }