|     9 |   | int inner (int flag) | 
                                        |       |   |     ^~~~~ | 
                                        |       |   |     | | 
                                        |       |   |     (6) entry to ‘inner’
  | 
                                        |    10 |   | { | 
                                        |    11 |   |   if (flag) | 
                                        |       |   |   ~~  | 
                                        |       |   |   | | 
                                        |       |   |   (7) following ‘true’ branch (when ‘flag != 0’)...
   ─>─┐ | 
                                        |       |   |                                                        │ | 
                                        |       |   |                                                        │ | 
                                        |       | ┌ | ───────────────────────────────────────────────────────┘ | 
                                        |    12 | │ |     throw value_error (); // { dg-warning "leak" } | 
                                        |       | │ |                        ~ | 
                                        |       | │ |                        | | 
                                        |       | └ | ──────────────────────>(8) ...to here
  | 
                                        |       |   |                        (9) throwing exception of type ‘value_error’ here... | 
                                        |       |   |                        (10) ⚠️  ‘ptr’ leaks here; was allocated at (4)
  |