- introduce simple declarations, separate uninitialized stack local
variable declarations are now merged into a single declaration
- align variable declarations spanning multiple lines
- fix struct fields alignment bug
- align enum just like struct
- do not confuse function call expression as a cpp declaration
- fix simple statement indentation bug
- fix break of long expressions
- fix label indentation bug
- fix function pointer call parenthesis alignment bug
- fix switch case statement indent bug
- align cpp line continuations, i.e. backslashes
- trim empty lines before else statements
- add simple mode (`-s`) intended to simplify the source code:
* removal of redundant parenthesis around return expressions
* removal of redundant curly braces around oneline statements
* do not mix presence and absence of curly braces around if/else
statements if at least one statement cannot fit on a single line
- honor existing new lines among functions arguments
- honor space before goto labels
- remove extra space before attribute succeeding struct declarations
- do not confuse queue(3) macros as declarations
- handle windows line endings
- never break before the closing parens in a call expression
- trim empty lines after switch case statements
- trim trailing whitespace from comments
- optionally skip new line after function implementation
- multiple fixes related to handling of cpp branches
- fix indent of statements after switch case statement
- multiple fixes related to brace initializers
- correct handling of do/while statements in diff mode
- handle and align x macros in brace initializers
- handle and align cpp macros in brace initializers
- allow enum declarations on a single line
- preserve new lines before comments and cpp declarations at end of a
statement block
- only grow the buffer if more than half of the space is utilized
- do not let a cpp branch inside a struct declaration end the current
scope of alignment
- long expressions in combination with optional new lines would not
break under certain circumstances
- fix several diff mode crashes
- handle mixed designated and positional initializers
- fix function pointer type detection regression
- fix alignment of nested brace initializers on the same line
- fix function pointer type detection regression
- improve detection of unknown types
- preserve spaces around misplaced binary operators
- preserve new lines before comments placed at the end of a statement block
- do not emit a new line before a field expression
- fix diff mode bug caused by a diff chunk only adding cpp directives
- fix incorrect indentation for block comments followed by goto labels
- recognize function pointer types without arguments