Home | History | Annotate | Line # | Download | only in lint2
      1  1.9  rillig # $NetBSD: read.ln,v 1.9 2024/11/05 04:53:28 rillig Exp $
      2  1.1  rillig #
      3  1.1  rillig # Cover each path of reading declarations, definitions and usages.
      4  1.1  rillig 
      5  1.2  rillig 0 s read.c
      6  1.2  rillig S read.c
      7  1.1  rillig 
      8  1.1  rillig # Cover all tspec_t constants, in declaration order.
      9  1.1  rillig #
     10  1.1  rillig # The line numbers correspond to the constant values of tspec_t,
     11  1.1  rillig # with the 128-bit types included.
     12  1.1  rillig #
     13  1.6  rillig # NO_TSPEC	cannot occur in lint1 output.
     14  1.1  rillig # SIGNED	cannot occur in lint1 output.
     15  1.1  rillig # UNSIGN	cannot occur in lint1 output.
     16  1.2  rillig 103 d 0.103 e 4f103 F0 B	# BOOL		_Bool		f103(void);
     17  1.2  rillig 104 d 0.104 e 4f104 F0 C	# CHAR		char		f104(void);
     18  1.2  rillig 105 d 0.105 e 4f105 F0 sC	# SCHAR		signed char	f105(void);
     19  1.2  rillig 106 d 0.106 e 4f106 F0 uC	# UCHAR		unsigned char	f106(void);
     20  1.2  rillig 107 d 0.107 e 4f107 F0 S	# SHORT		short		f107(void);
     21  1.2  rillig 108 d 0.108 e 4f108 F0 uS	# USHORT	unsigned short	f108(void);
     22  1.2  rillig 109 d 0.109 e 4f109 F0 I	# INT		int		f109(void);
     23  1.2  rillig 110 d 0.110 e 4f110 F0 uI	# UINT		unsigned int	f110(void);
     24  1.2  rillig 111 d 0.111 e 4f111 F0 L	# LONG		long		f111(void);
     25  1.2  rillig 112 d 0.112 e 4f112 F0 uL	# ULONG		unsigned long	f112(void);
     26  1.7  rillig 113 d 0.113 e 4f113 F0 Q	# LLONG		long long	f113(void);
     27  1.7  rillig 114 d 0.114 e 4f114 F0 uQ	# ULLONG	unsigned long long f114(void);
     28  1.9  rillig # INT128	works only in 64-bit mode, see read_lp64.ln.
     29  1.9  rillig # UINT128	works only in 64-bit mode, see read_lp64.ln.
     30  1.2  rillig 117 d 0.117 e 4f117 F0 sD	# FLOAT		float		f117(void);
     31  1.2  rillig 118 d 0.118 e 4f118 F0 D	# DOUBLE	double		f118(void);
     32  1.2  rillig 119 d 0.119 e 4f119 F0 lD	# LDOUBLE	long double	f119(void);
     33  1.2  rillig 120 d 0.120 e 4f120 F0 V	# VOID		void		f120(void);
     34  1.2  rillig 121 d 0.121 e 4f121 F0 sT16tag121 # STRUCT	struct tag121	f121(void);
     35  1.2  rillig 122 d 0.122 e 4f122 F0 uT16tag122 # UNION	union tag122	f122(void);
     36  1.2  rillig 123 d 0.123 e 4f123 F0 eT16tag123 # ENUM	enum tag123	f123(void);
     37  1.2  rillig 124 d 0.124 e 4f124 F0 PV	# PTR		void *		f124(void);
     38  1.2  rillig 125 d 0.125 e 4a125 A7D		# ARRAY		extern double	a125[7];
     39  1.2  rillig 126 d 0.126 e 4f126 F0 PF1DV	# FUNC		void (*f126(void))(double);
     40  1.1  rillig # COMPLEX	cannot occur in lint1 output.
     41  1.2  rillig 127 d 0.127 e 4f127 F0 sX	# FCOMPLEX	float _Complex	f127(void);
     42  1.2  rillig 128 d 0.128 e 4f128 F0 X	# COMPLEX	double _Complex	f128(void);
     43  1.2  rillig 129 d 0.129 e 4f129 F0 lX	# LCOMPLEX	long double _Complex f129(void);
     44  1.1  rillig 
     45  1.1  rillig # Tagged types (struct, union, enum) can have tags or typedefs or be
     46  1.1  rillig # anonymous, but anonymous types are not usually used in external
     47  1.1  rillig # declarations.
     48  1.1  rillig #
     49  1.1  rillig # struct s_tag f201(void);
     50  1.2  rillig 201 d 0.201 e 4f201 F0 sT15s_tag
     51  1.1  rillig # typedef struct {} s_def;
     52  1.1  rillig # s_def f202(void);
     53  1.2  rillig 202 d 0.202 e 4f202 F0 sT25s_def
     54  1.1  rillig # struct { int member; } f203(void);
     55  1.2  rillig 203 d 0.203 e 4f203 F0 sT3203.0.0
     56  1.1  rillig 
     57  1.1  rillig # Type qualifiers
     58  1.1  rillig #
     59  1.1  rillig # void f301(const int *);
     60  1.2  rillig 301 d 0.301 e 4f301 F1 PcI V
     61  1.1  rillig # void f302(volatile int *);
     62  1.2  rillig 302 d 0.302 e 4f302 F1 PvI V
     63  1.1  rillig # void f302(const volatile int *);
     64  1.2  rillig 303 d 0.303 e 4f303 F1 PcvI V
     65  1.3  rillig 
     66  1.4  rillig # Taken from ../lint1/emit.exp-ln.
     67  1.4  rillig 193 d 0.193 v0 d 15varargs_comment   F1 PcC V
     68  1.4  rillig 199 d 0.199 v0 d 17varargs_0_comment F1 PcC V
     69  1.4  rillig 205 d 0.205 v3 d 17varargs_3_comment F4 I I I PcC V
     70  1.8  rillig # The PRINTFLIKE information is only emitted if its parameter is > 0.
     71  1.4  rillig 211 d 0.211         d 18printflike_comment    F1  PcC V
     72  1.4  rillig 217 d 0.217         d 20printflike_0_comment  F1  PcC V
     73  1.4  rillig 223 d 0.223 v3  P3  d 20printflike_3_comment  F3  I I PcC V
     74  1.4  rillig 229 d 0.229 v10 P10 d 21printflike_10_comment F10 I I I I I I I I I PcC V
     75  1.8  rillig # The SCANFLIKE information is only emitted if its parameter is > 0.
     76  1.4  rillig 237 d 0.237         d 17scanflike_comment     F1  PcC V
     77  1.4  rillig 243 d 0.243         d 19scanflike_0_comment   F1  PcC V
     78  1.4  rillig 249 d 0.249 v3  S3  d 19scanflike_3_comment   F3  I I PcC V
     79  1.5  rillig #
     80  1.5  rillig 253 d 0.253 e   13used_function F0 V
     81  1.5  rillig 258 c 0.258 i   13used_function f0 V
     82  1.5  rillig # In a function definition, 'i' means 'inline'.
     83  1.5  rillig 256 d 0.256 d i 15inline_function F0 V
     84  1.5  rillig 
     85  1.5  rillig # In a function definition, 'r' means the function returns a value, in
     86  1.5  rillig # contrast to having a mere 'return;' without any expression.
     87  1.5  rillig # This distinction is mainly relevant for non-prototype functions.
     88  1.5  rillig 254 d 0.254 d r   13used_function F0 I
     89  1.5  rillig # In a function call, 'i' means 'return value ignored'.
     90  1.5  rillig 262 c 0.262 i     13used_function f0 I
     91  1.5  rillig # In a function call, 'd' means 'return value discarded'.
     92  1.5  rillig 263 c 0.263 d     13used_function f0 I
     93  1.5  rillig # In a function call, 'u' means 'return value used'.
     94  1.5  rillig 264 c 0.264 u     13used_function f0 I
     95  1.5  rillig # This function is 'inline' and 'has return value'.
     96  1.5  rillig 260 d 0.260 d r i 15inline_function F0 I
     97