/* $NetBSD: opt_dj.c,v 1.9 2023/06/26 12:21:18 rillig Exp $ */ /* * Tests for the options '-dj' and '-ndj'. * * The option '-dj' left-justifies declarations of local variables. * * The option '-ndj' indents declarations the same as code. */ /* For top-level declarations, '-dj' and '-ndj' produce the same output. */ //indent input int i; int *ip; const char *ccp; const void *****vppppp; const void ******vpppppp; const void ********vpppppppp; //indent end //indent run -dj int i; int *ip; const char *ccp; const void *****vppppp; const void ******vpppppp; const void ********vpppppppp; //indent end //indent run-equals-prev-output -ndj //indent input void example(void) { int decl; code(); } //indent end //indent run -dj void example(void) { int decl; code(); } //indent end //indent run -ndj void example(void) { int decl; code(); } //indent end /* * The option '-dj' does not influence traditional function definitions. */ //indent input double dbl_plus3(a, b, c) double a, b, c; { return a + b + c; } //indent end //indent run -dj double dbl_plus3(a, b, c) double a, b, c; { return a + b + c; } //indent end //indent input struct a { struct b { struct c { struct d1 { int e; } d1; struct d2 { int e; } d2; } c; } b; }; //indent end //indent run -d0 struct a { struct b { struct c { struct d1 { int e; } d1; struct d2 { int e; } d2; } c; } b; }; //indent end //indent run-equals-prev-output -dj //indent run-equals-input -di0 //indent input { { struct a { struct b { struct c { struct d1 { int e; } d1; struct d2 { int e; } d2; } c; } b; }; } } //indent end //indent run -dj { { struct a { struct b { struct c { struct d1 { int e; } d1; struct d2 { int e; } d2; } c; } b; }; } } //indent end