c-lineup-after-whitesmith-blocks

c-lineup-after-whitesmith-blocks is a compiled Lisp function in `cc-align.el'.

(c-lineup-after-whitesmith-blocks LANGELEM)

Compensate for Whitesmith style indentation of blocks.
Due to the way CC Mode calculates anchor positions for normal lines
inside blocks, this function is necessary for those lines to get
correct Whitesmith style indentation. Consider the following
examples:

int foo()
{
int foo() {
{ a;
a; }
x; <-> x; <- c-lineup-after-whitesmith-blocks

The fact that the line with "x" is preceded by a Whitesmith style
indented block in one case and not the other should not affect its
indentation. But since CC Mode in cases like this uses the
indentation of the preceding statement as anchor position, the "x"
would in the rightmost case be indented too much if the offset for
`statement' was set simply to zero.

This lineup function corrects for this situation by detecting if the
anchor position is at an open paren character. In that case, it
instead indents relative to the surrounding block just like
`c-lineup-whitesmith-in-block'.

Works with: brace-list-entry, brace-entry-open, statement,
arglist-cont.