@@ -2873,28 +2873,32 @@ impl Path {
28732873 let mut lhs_scope_stack_postcondition = self . scope_stack ;
28742874 let mut rhs_symbol_stack_precondition = partial_path. symbol_stack_precondition ;
28752875 let mut rhs_scope_stack_precondition = partial_path. scope_stack_precondition ;
2876- if let Err ( e) = graph[ self . end_node ] . halfopen_closed_postcondition (
2877- paths,
2878- & mut lhs_symbol_stack_postcondition,
2879- & mut lhs_scope_stack_postcondition,
2880- ) {
2881- panic ! (
2882- "failed to halfopen postcondition of {}: {:?}" ,
2883- self . display( graph, paths) ,
2884- e
2885- ) ;
2886- }
2887- if let Err ( e) = graph[ partial_path. start_node ] . halfopen_closed_partial_precondition (
2888- partials,
2889- & mut rhs_symbol_stack_precondition,
2890- & mut rhs_scope_stack_precondition,
2891- ) {
2892- panic ! (
2893- "failed to halfopen precondition of {}: {:?}" ,
2894- self . display( graph, paths) ,
2895- e
2896- ) ;
2897- } ;
2876+ graph[ self . end_node ]
2877+ . halfopen_closed_postcondition (
2878+ paths,
2879+ & mut lhs_symbol_stack_postcondition,
2880+ & mut lhs_scope_stack_postcondition,
2881+ )
2882+ . unwrap_or_else ( |e| {
2883+ panic ! (
2884+ "failed to halfopen postcondition of {}: {:?}" ,
2885+ self . display( graph, paths) ,
2886+ e
2887+ )
2888+ } ) ;
2889+ graph[ partial_path. start_node ]
2890+ . halfopen_closed_partial_precondition (
2891+ partials,
2892+ & mut rhs_symbol_stack_precondition,
2893+ & mut rhs_scope_stack_precondition,
2894+ )
2895+ . unwrap_or_else ( |e| {
2896+ panic ! (
2897+ "failed to halfopen precondition of {}: {:?}" ,
2898+ self . display( graph, paths) ,
2899+ e
2900+ ) ;
2901+ } ) ;
28982902
28992903 let mut symbol_bindings = SymbolStackBindings :: new ( ) ;
29002904 let mut scope_bindings = ScopeStackBindings :: new ( ) ;
@@ -3023,28 +3027,32 @@ impl PartialPath {
30233027 let mut lhs_scope_stack_postcondition = lhs. scope_stack_postcondition ;
30243028 let mut rhs_symbol_stack_precondition = rhs. symbol_stack_precondition ;
30253029 let mut rhs_scope_stack_precondition = rhs. scope_stack_precondition ;
3026- if let Err ( e) = graph[ lhs. end_node ] . halfopen_closed_partial_postcondition (
3027- partials,
3028- & mut lhs_symbol_stack_postcondition,
3029- & mut lhs_scope_stack_postcondition,
3030- ) {
3031- panic ! (
3032- "failed to halfopen postcondition of {}: {:?}" ,
3033- lhs. display( graph, partials) ,
3034- e
3035- ) ;
3036- }
3037- if let Err ( e) = graph[ rhs. start_node ] . halfopen_closed_partial_precondition (
3038- partials,
3039- & mut rhs_symbol_stack_precondition,
3040- & mut rhs_scope_stack_precondition,
3041- ) {
3042- panic ! (
3043- "failed to halfopen postcondition of {}: {:?}" ,
3044- rhs. display( graph, partials) ,
3045- e
3046- ) ;
3047- } ;
3030+ graph[ lhs. end_node ]
3031+ . halfopen_closed_partial_postcondition (
3032+ partials,
3033+ & mut lhs_symbol_stack_postcondition,
3034+ & mut lhs_scope_stack_postcondition,
3035+ )
3036+ . unwrap_or_else ( |e| {
3037+ panic ! (
3038+ "failed to halfopen postcondition of {}: {:?}" ,
3039+ lhs. display( graph, partials) ,
3040+ e
3041+ ) ;
3042+ } ) ;
3043+ graph[ rhs. start_node ]
3044+ . halfopen_closed_partial_precondition (
3045+ partials,
3046+ & mut rhs_symbol_stack_precondition,
3047+ & mut rhs_scope_stack_precondition,
3048+ )
3049+ . unwrap_or_else ( |e| {
3050+ panic ! (
3051+ "failed to halfopen postcondition of {}: {:?}" ,
3052+ rhs. display( graph, partials) ,
3053+ e
3054+ ) ;
3055+ } ) ;
30483056
30493057 let mut symbol_bindings = PartialSymbolStackBindings :: new ( ) ;
30503058 let mut scope_bindings = PartialScopeStackBindings :: new ( ) ;
0 commit comments