PPI::Statement::UnmatchedBrace(3) User Contributed Perl Documentation PPI::Statement::UnmatchedBrace(3)

# [NAME](#NAME)

PPI::Statement::UnmatchedBrace - Isolated unmatched brace

# [SYNOPSIS](#SYNOPSIS)

```
  sub foo {
      1;
  }
  
  } # <--- This is an unmatched brace
```

# [INHERITANCE](#INHERITANCE)

```
  PPI::Statement::UnmatchedBrace
  isa PPI::Statement
      isa PPI::Node
          isa PPI::Element
```

# [DESCRIPTION](#DESCRIPTION)

The "PPI::Statement::UnmatchedBrace" class is a miscellaneous utility class. Objects of this type should be rare, or not exist at all in normal valid PPI::Document objects.

It can be either a round ')', square ']' or curly '}' brace, this class does not distinguish. Objects of this type are only allocated at a structural level, not a lexical level (as they are lexically invalid anyway).

The presence of a "PPI::Statement::UnmatchedBrace" indicated a broken or invalid document. Or maybe a bug in PPI, but **far** more likely a broken Document. :)

# [METHODS](#METHODS)

"PPI::Statement::UnmatchedBrace" has no additional methods beyond the default ones provided by PPI::Statement, PPI::Node and PPI::Element.

# [SUPPORT](#SUPPORT)

See the support section in the main module.

# [AUTHOR](#AUTHOR)

Adam Kennedy &lt;adamk@cpan.org&gt;

# [COPYRIGHT](#COPYRIGHT)

Copyright 2001 - 2011 Adam Kennedy.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.

2026-08-18 perl v5.44.0

---

Document: PPI::Statement::UnmatchedBrace(3pm) from perl-ppi 1.291-r1 (Chainguard OS)
Source: https://github.com/Perl-Critic/PPI
