Skip to content

Commit 108d838

Browse files
committed
Raise exception when duplicate exceptions are added
1 parent df6fa88 commit 108d838

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

pyt/cfg.py

+11-2
Original file line numberDiff line numberDiff line change
@@ -1071,13 +1071,22 @@ def visit_FunctionDef(self, node):
10711071

10721072
def intraprocedural(project_modules, cfg_list):
10731073
functions = list()
1074-
1074+
dup = list()
10751075
for module in project_modules:
10761076
t = generate_ast(module[1])
10771077
cfg_list.append(build_intra_cfg(t, project_modules=[], local_modules=[], filename=module[1]))
1078+
dup.append(t)
10781079
fdv = FunctionDefVisitor()
10791080
fdv.visit(t)
1081+
dup.extend(fdv.result)
10801082
functions.extend([(f, module[1]) for f in fdv.result])
1081-
1083+
10821084
for f in functions:
10831085
cfg_list.append(build_intra_function_cfg(f[0], f[1]))
1086+
1087+
s = set()
1088+
for d in dup:
1089+
if d in s:
1090+
raise Exception('Duplicates in the functions definitions list.')
1091+
else:
1092+
s.add(d)

0 commit comments

Comments
 (0)