Home | History | Annotate | Line # | Download | only in unit-tests
directive-else.mk revision 1.6
      1  1.6  rillig # $NetBSD: directive-else.mk,v 1.6 2020/11/13 09:01:59 rillig Exp $
      2  1.1  rillig #
      3  1.2  rillig # Tests for the .else directive.
      4  1.1  rillig 
      5  1.6  rillig .MAKEFLAGS: -dL			# To enable the check for ".else <cond>"
      6  1.6  rillig 
      7  1.3  rillig # The .else directive does not take any arguments.
      8  1.3  rillig # As of 2020-08-29, make doesn't warn about this.
      9  1.3  rillig .if 0
     10  1.4  rillig .  warning must not be reached
     11  1.3  rillig .else 123
     12  1.4  rillig .  info ok
     13  1.3  rillig .endif
     14  1.3  rillig 
     15  1.3  rillig .if 1
     16  1.4  rillig .  info ok
     17  1.3  rillig .else 123
     18  1.4  rillig .  warning must not be reached
     19  1.3  rillig .endif
     20  1.3  rillig 
     21  1.3  rillig # An .else without a corresponding .if is an error.
     22  1.3  rillig .else
     23  1.3  rillig 
     24  1.3  rillig # Accidental extra .else directives are detected too.
     25  1.3  rillig .if 0
     26  1.4  rillig .  warning must not be reached
     27  1.3  rillig .else
     28  1.4  rillig .  info ok
     29  1.3  rillig .else
     30  1.4  rillig .  info After an extra .else, everything is skipped.
     31  1.3  rillig .endif
     32  1.1  rillig 
     33  1.5  rillig # An .else may have a comment.  This comment does not count as an argument,
     34  1.5  rillig # therefore no parse error.
     35  1.5  rillig .if 0
     36  1.5  rillig .else # comment
     37  1.5  rillig .endif
     38  1.5  rillig 
     39  1.5  rillig # A variable expression does count as an argument, even if it is empty.
     40  1.5  rillig # XXX: This should be a parse error.
     41  1.5  rillig .if 0
     42  1.5  rillig .else ${:U}
     43  1.5  rillig .endif
     44  1.5  rillig 
     45  1.1  rillig all:
     46  1.1  rillig 	@:;
     47