@ -33,10 +33,14 @@ let compute_hash ~(severity : string) ~(bug_type : string) ~(proc_name : Procnam
let base_filename = Filename . basename file in
let base_filename = Filename . basename file in
let hashable_procedure_name = Procname . hashable_name proc_name in
let hashable_procedure_name = Procname . hashable_name proc_name in
let location_independent_qualifier =
let location_independent_qualifier =
(* Removing the line,column, and infer temporary variable ( e.g., n$67 ) information from the
(* Removing the line,column, line and column in lambda's name
( e . g . test :: lambda . cpp : 10 : 15 :: operator () ) ,
and infer temporary variable ( e . g . , n $ 67 ) information from the
error message as well as the index of the annonymmous class to make the hash invariant
error message as well as the index of the annonymmous class to make the hash invariant
when moving the source code in the file * )
when moving the source code in the file * )
Str . global_replace ( Str . regexp " \\ (line \\ |column \\ |parameter \\ | \\ $ \\ )[0-9]+ " ) " $_ " qualifier
Str . global_replace
( Str . regexp " \\ (line \\ |column \\ |: \\ |parameter \\ | \\ $ \\ )[0-9]+ " )
" $_ " qualifier
in
in
Utils . better_hash
Utils . better_hash
( severity , bug_type , hashable_procedure_name , base_filename , location_independent_qualifier )
( severity , bug_type , hashable_procedure_name , base_filename , location_independent_qualifier )