diff --git a/lib/PhpParser/PrettyPrinter/Standard.php b/lib/PhpParser/PrettyPrinter/Standard.php
index 888ef4aa..1825a319 100644
--- a/lib/PhpParser/PrettyPrinter/Standard.php
+++ b/lib/PhpParser/PrettyPrinter/Standard.php
@@ -374,7 +374,7 @@ class Standard extends PrettyPrinterAbstract
     }
 
     protected function pExpr_UnaryMinus(Expr\UnaryMinus $node) {
-        if ($node->expr instanceof Expr\UnaryMinus) {
+        if ($node->expr instanceof Expr\UnaryMinus || $node->expr instanceof Expr\PreDec) {
             // Enforce -(-$expr) instead of --$expr
             return '-(' . $this->p($node->expr) . ')';
         }
@@ -382,7 +382,7 @@ class Standard extends PrettyPrinterAbstract
     }
 
     protected function pExpr_UnaryPlus(Expr\UnaryPlus $node) {
-        if ($node->expr instanceof Expr\UnaryPlus) {
+        if ($node->expr instanceof Expr\UnaryPlus || $node->expr instanceof Expr\PreInc) {
             // Enforce +(+$expr) instead of ++$expr
             return '+(' . $this->p($node->expr) . ')';
         }
diff --git a/test/code/prettyPrinter/expr/parentheses.test b/test/code/prettyPrinter/expr/parentheses.test
index 0d1cfebf..a49c1108 100644
--- a/test/code/prettyPrinter/expr/parentheses.test
+++ b/test/code/prettyPrinter/expr/parentheses.test
@@ -40,6 +40,8 @@ print ($a and print $b);
 
 -(-$a);
 +(+$a);
+-(--$a);
++(++$a);
 
 // The following will currently add unnecessary parentheses, because the pretty printer is not aware that assignment
 // and incdec only work on variables.
@@ -75,6 +77,8 @@ yield from ($a and yield from $b);
 print ($a and print $b);
 -(-$a);
 +(+$a);
+-(--$a);
++(++$a);
 // The following will currently add unnecessary parentheses, because the pretty printer is not aware that assignment
 // and incdec only work on variables.
 !($a = $b);