opt_bacc.c revision 1.1
11.1Srillig/* $NetBSD: opt_bacc.c,v 1.1 2021/10/16 03:20:13 rillig Exp $ */
21.1Srillig/* $FreeBSD$ */
31.1Srillig
41.1Srillig#indent input
51.1Srillig/*
61.1Srillig * Test the option -bacc, which forces a blank line around every conditional
71.1Srillig * compilation block.  For example, in front of every #ifdef and after every
81.1Srillig * #endif.  Other blank lines surrounding such blocks are swallowed.
91.1Srillig *
101.1Srillig * XXX: As of 2021-10-05, the option -bacc has no effect on declarations since
111.1Srillig * process_decl resets prefix_blankline_requested unconditionally.
121.1Srillig */
131.1Srillig
141.1Srilligint		a;
151.1Srillig#if 0				/* FIXME: need blank line above */
161.1Srilligint		b;
171.1Srillig#endif				/* FIXME: need blank line below */
181.1Srilligint		c;
191.1Srillig
201.1Srillig
211.1Srilligint		space_a;
221.1Srillig
231.1Srillig#if 0				/* FIXME: need blank line above */
241.1Srillig
251.1Srilligint		space_b;	/* FIXME: need no blank line above */
261.1Srillig
271.1Srillig#endif
281.1Srillig
291.1Srilligint		space_c;
301.1Srillig
311.1Srilligconst char *
321.1Srilligos_name(void)
331.1Srillig{
341.1Srillig#if defined(__NetBSD__) || defined(__FreeBSD__)
351.1Srillig	return "BSD";
361.1Srillig#else
371.1Srillig	return "unknown";
381.1Srillig#endif
391.1Srillig}
401.1Srillig#indent end
411.1Srillig
421.1Srillig#indent run -bacc
431.1Srillig/*
441.1Srillig * Test the option -bacc, which forces a blank line around every conditional
451.1Srillig * compilation block.  For example, in front of every #ifdef and after every
461.1Srillig * #endif.  Other blank lines surrounding such blocks are swallowed.
471.1Srillig *
481.1Srillig * XXX: As of 2021-10-05, the option -bacc has no effect on declarations since
491.1Srillig * process_decl resets prefix_blankline_requested unconditionally.
501.1Srillig */
511.1Srillig
521.1Srilligint		a;
531.1Srillig#if 0				/* FIXME: need blank line above */
541.1Srilligint		b;
551.1Srillig#endif				/* FIXME: need blank line below */
561.1Srilligint		c;
571.1Srillig
581.1Srillig
591.1Srilligint		space_a;
601.1Srillig#if 0				/* FIXME: need blank line above */
611.1Srillig
621.1Srilligint		space_b;	/* FIXME: need no blank line above */
631.1Srillig#endif
641.1Srillig
651.1Srilligint		space_c;
661.1Srillig
671.1Srillig/* $ XXX: The '*' should not be set apart from the rest of the return type. */
681.1Srilligconst char     *
691.1Srilligos_name(void)
701.1Srillig{
711.1Srillig#if defined(__NetBSD__) || defined(__FreeBSD__)
721.1Srillig
731.1Srillig/* $ FIXME: This empty line _below_ the '#if' contradicts the manual page. */
741.1Srillig	return "BSD";
751.1Srillig#else
761.1Srillig
771.1Srillig/* $ FIXME: This empty line _below_ the '#else' contradicts the manual page. */
781.1Srillig	return "unknown";
791.1Srillig#endif
801.1Srillig/* $ FIXME: There should be an empty line after the '#endif'. */
811.1Srillig}
821.1Srillig#indent end
831.1Srillig
841.1Srillig#indent input
851.1Srilligint		a;
861.1Srillig#if 0
871.1Srilligint		b;
881.1Srillig#endif
891.1Srilligint		c;
901.1Srillig
911.1Srillig
921.1Srilligint		space_a;
931.1Srillig
941.1Srillig#if 0
951.1Srillig
961.1Srilligint		space_b;
971.1Srillig
981.1Srillig#endif
991.1Srillig
1001.1Srilligint		space_c;
1011.1Srillig
1021.1Srilligconst char *
1031.1Srilligos_name(void)
1041.1Srillig{
1051.1Srillig#if defined(__NetBSD__) || defined(__FreeBSD__)
1061.1Srillig	return "BSD";
1071.1Srillig#else
1081.1Srillig	return "unknown";
1091.1Srillig#endif
1101.1Srillig}
1111.1Srillig#indent end
1121.1Srillig
1131.1Srillig#indent run -nbacc
1141.1Srilligint		a;
1151.1Srillig#if 0
1161.1Srilligint		b;
1171.1Srillig#endif
1181.1Srilligint		c;
1191.1Srillig
1201.1Srillig
1211.1Srilligint		space_a;
1221.1Srillig
1231.1Srillig#if 0
1241.1Srillig
1251.1Srilligint		space_b;
1261.1Srillig
1271.1Srillig#endif
1281.1Srillig
1291.1Srilligint		space_c;
1301.1Srillig
1311.1Srilligconst char     *
1321.1Srilligos_name(void)
1331.1Srillig{
1341.1Srillig#if defined(__NetBSD__) || defined(__FreeBSD__)
1351.1Srillig	return "BSD";
1361.1Srillig#else
1371.1Srillig	return "unknown";
1381.1Srillig#endif
1391.1Srillig}
1401.1Srillig#indent end
141