tenseleyflow/bencch / d74308e

Browse files

Add import-shape graph fixtures

Authored by espadonne
SHA
d74308e32fc65534025abe72696f9ad6ad4b3f4d
Parents
101543d
Tree
7525b4c

9 changed files

StatusFile+-
M fixtures/README.md 2 1
A fixtures/modules/collision_shadow/left_values.f90 4 0
A fixtures/modules/collision_shadow/main_aliases.f90 8 0
A fixtures/modules/collision_shadow/main_ambiguous.f90 7 0
A fixtures/modules/collision_shadow/right_values.f90 4 0
A fixtures/modules/mixed_only/base_values.f90 5 0
A fixtures/modules/mixed_only/bridge_values.f90 4 0
A fixtures/modules/mixed_only/main_alias.f90 7 0
A fixtures/modules/mixed_only/main_hidden.f90 6 0
fixtures/README.mdmodified
@@ -28,4 +28,5 @@ Sprint 7 begins carving authored module graphs into `fixtures/modules/` so the
28
 bench can model ordered multi-file inputs instead of only isolated sources.
28
 bench can model ordered multi-file inputs instead of only isolated sources.
29
 That corpus now covers module-use chains, renaming, module procedures, and an
29
 That corpus now covers module-use chains, renaming, module procedures, and an
30
 early submodule probe, plus visibility, fan-in, re-export, and diamond-style
30
 early submodule probe, plus visibility, fan-in, re-export, and diamond-style
31
-dependency graph families, along with rename-across-hop export-surface probes.
31
+dependency graph families, along with rename-across-hop export-surface probes
32
+and mixed-ONLY/collision graph shapes.
fixtures/modules/collision_shadow/left_values.f90added
@@ -0,0 +1,4 @@
1
+module collision_left_values
2
+    implicit none
3
+    integer, parameter :: payload = 3
4
+end module collision_left_values
fixtures/modules/collision_shadow/main_aliases.f90added
@@ -0,0 +1,8 @@
1
+! CHECK: 11
2
+program main
3
+    use collision_left_values, only: left_value => payload
4
+    use collision_right_values, only: right_value => payload
5
+    implicit none
6
+
7
+    print *, left_value + right_value
8
+end program main
fixtures/modules/collision_shadow/main_ambiguous.f90added
@@ -0,0 +1,7 @@
1
+program main
2
+    use collision_left_values, only: payload
3
+    use collision_right_values, only: payload
4
+    implicit none
5
+
6
+    print *, payload
7
+end program main
fixtures/modules/collision_shadow/right_values.f90added
@@ -0,0 +1,4 @@
1
+module collision_right_values
2
+    implicit none
3
+    integer, parameter :: payload = 8
4
+end module collision_right_values
fixtures/modules/mixed_only/base_values.f90added
@@ -0,0 +1,5 @@
1
+module mixed_only_values
2
+    implicit none
3
+    integer, parameter :: alpha = 4
4
+    integer, parameter :: beta = 9
5
+end module mixed_only_values
fixtures/modules/mixed_only/bridge_values.f90added
@@ -0,0 +1,4 @@
1
+module mixed_only_bridge
2
+    use mixed_only_values, only: kept => alpha, beta
3
+    implicit none
4
+end module mixed_only_bridge
fixtures/modules/mixed_only/main_alias.f90added
@@ -0,0 +1,7 @@
1
+! CHECK: 13
2
+program main
3
+    use mixed_only_bridge, only: chosen => kept, beta
4
+    implicit none
5
+
6
+    print *, chosen + beta
7
+end program main
fixtures/modules/mixed_only/main_hidden.f90added
@@ -0,0 +1,6 @@
1
+program main
2
+    use mixed_only_bridge, only: alpha, beta
3
+    implicit none
4
+
5
+    print *, alpha + beta
6
+end program main