brintos

brintos / llvm-project-archived public Read only

0
0
Text · 46.2 KiB · b522581 Raw
799 lines · c
1// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fsyntax-only -verify %s -Wabsolute-value -Wno-int-conversion2// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fsyntax-only %s -Wabsolute-value -Wno-int-conversion -fdiagnostics-parseable-fixits 2>&1 | FileCheck %s3 4int abs(int);5long int labs(long int);6long long int llabs(long long int);7 8float fabsf(float);9double fabs(double);10long double fabsl(long double);11 12float cabsf(float _Complex);13double cabs(double _Complex);14long double cabsl(long double _Complex);15 16void test_int(int x) {17  (void)abs(x);18  (void)labs(x);19  (void)llabs(x);20 21  (void)fabsf(x);22  // expected-warning@-1 {{using floating point absolute value function 'fabsf' when argument is of integer type}}23  // expected-note@-2 {{use function 'abs' instead}}24  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"abs"25  (void)fabs(x);26  // expected-warning@-1 {{using floating point absolute value function 'fabs' when argument is of integer type}}27  // expected-note@-2 {{use function 'abs' instead}}28  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"abs"29  (void)fabsl(x);30  // expected-warning@-1 {{using floating point absolute value function 'fabsl' when argument is of integer type}}31  // expected-note@-2 {{use function 'abs' instead}}32  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"abs"33 34  (void)cabsf(x);35  // expected-warning@-1 {{using complex absolute value function 'cabsf' when argument is of integer type}}36  // expected-note@-2 {{use function 'abs' instead}}37  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"abs"38  (void)cabs(x);39  // expected-warning@-1 {{using complex absolute value function 'cabs' when argument is of integer type}}40  // expected-note@-2 {{use function 'abs' instead}}41  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"abs"42  (void)cabsl(x);43  // expected-warning@-1 {{using complex absolute value function 'cabsl' when argument is of integer type}}44  // expected-note@-2 {{use function 'abs' instead}}45  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"abs"46 47  (void)__builtin_abs(x);48  (void)__builtin_labs(x);49  (void)__builtin_llabs(x);50 51  (void)__builtin_fabsf(x);52  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsf' when argument is of integer type}}53  // expected-note@-2 {{use function '__builtin_abs' instead}}54  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_abs"55  (void)__builtin_fabs(x);56  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabs' when argument is of integer type}}57  // expected-note@-2 {{use function '__builtin_abs' instead}}58  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_abs"59  (void)__builtin_fabsl(x);60  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsl' when argument is of integer type}}61  // expected-note@-2 {{use function '__builtin_abs' instead}}62  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_abs"63 64  (void)__builtin_cabsf(x);65  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsf' when argument is of integer type}}66  // expected-note@-2 {{use function '__builtin_abs' instead}}67  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_abs"68  (void)__builtin_cabs(x);69  // expected-warning@-1 {{using complex absolute value function '__builtin_cabs' when argument is of integer type}}70  // expected-note@-2 {{use function '__builtin_abs' instead}}71  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_abs"72  (void)__builtin_cabsl(x);73  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsl' when argument is of integer type}}74  // expected-note@-2 {{use function '__builtin_abs' instead}}75  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_abs"76}77 78void test_long(long x) {79  (void)abs(x);  // no warning - int and long are same length for this target80  (void)labs(x);81  (void)llabs(x);82 83  (void)fabsf(x);84  // expected-warning@-1 {{using floating point absolute value function 'fabsf' when argument is of integer type}}85  // expected-note@-2 {{use function 'labs' instead}}86  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"labs"87  (void)fabs(x);88  // expected-warning@-1 {{using floating point absolute value function 'fabs' when argument is of integer type}}89  // expected-note@-2 {{use function 'labs' instead}}90  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"labs"91  (void)fabsl(x);92  // expected-warning@-1 {{using floating point absolute value function 'fabsl' when argument is of integer type}}93  // expected-note@-2 {{use function 'labs' instead}}94  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"labs"95 96  (void)cabsf(x);97  // expected-warning@-1 {{using complex absolute value function 'cabsf' when argument is of integer type}}98  // expected-note@-2 {{use function 'labs' instead}}99  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"labs"100  (void)cabs(x);101  // expected-warning@-1 {{using complex absolute value function 'cabs' when argument is of integer type}}102  // expected-note@-2 {{use function 'labs' instead}}103  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"labs"104  (void)cabsl(x);105  // expected-warning@-1 {{using complex absolute value function 'cabsl' when argument is of integer type}}106  // expected-note@-2 {{use function 'labs' instead}}107  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"labs"108 109  (void)__builtin_abs(x);  // no warning - int and long are same length for110                           // this target111  (void)__builtin_labs(x);112  (void)__builtin_llabs(x);113 114  (void)__builtin_fabsf(x);115  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsf' when argument is of integer type}}116  // expected-note@-2 {{use function '__builtin_labs' instead}}117  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_labs"118  (void)__builtin_fabs(x);119  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabs' when argument is of integer type}}120  // expected-note@-2 {{use function '__builtin_labs' instead}}121  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_labs"122  (void)__builtin_fabsl(x);123  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsl' when argument is of integer type}}124  // expected-note@-2 {{use function '__builtin_labs' instead}}125  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_labs"126 127  (void)__builtin_cabsf(x);128  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsf' when argument is of integer type}}129  // expected-note@-2 {{use function '__builtin_labs' instead}}130  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_labs"131  (void)__builtin_cabs(x);132  // expected-warning@-1 {{using complex absolute value function '__builtin_cabs' when argument is of integer type}}133  // expected-note@-2 {{use function '__builtin_labs' instead}}134  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_labs"135  (void)__builtin_cabsl(x);136  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsl' when argument is of integer type}}137  // expected-note@-2 {{use function '__builtin_labs' instead}}138  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_labs"139}140 141void test_long_long(long long x) {142  (void)abs(x);143  // expected-warning@-1{{absolute value function 'abs' given an argument of type 'long long' but has parameter of type 'int' which may cause truncation of value}}144  // expected-note@-2{{use function 'llabs' instead}}145  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:12}:"llabs"146  (void)labs(x);147  // expected-warning@-1{{absolute value function 'labs' given an argument of type 'long long' but has parameter of type 'long' which may cause truncation of value}}148  // expected-note@-2{{use function 'llabs' instead}}149  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"llabs"150  (void)llabs(x);151 152  (void)fabsf(x);153  // expected-warning@-1 {{using floating point absolute value function 'fabsf' when argument is of integer type}}154  // expected-note@-2 {{use function 'llabs' instead}}155  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"llabs"156  (void)fabs(x);157  // expected-warning@-1 {{using floating point absolute value function 'fabs' when argument is of integer type}}158  // expected-note@-2 {{use function 'llabs' instead}}159  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"llabs"160  (void)fabsl(x);161  // expected-warning@-1 {{using floating point absolute value function 'fabsl' when argument is of integer type}}162  // expected-note@-2 {{use function 'llabs' instead}}163  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"llabs"164 165  (void)cabsf(x);166  // expected-warning@-1 {{using complex absolute value function 'cabsf' when argument is of integer type}}167  // expected-note@-2 {{use function 'llabs' instead}}168  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"llabs"169  (void)cabs(x);170  // expected-warning@-1 {{using complex absolute value function 'cabs' when argument is of integer type}}171  // expected-note@-2 {{use function 'llabs' instead}}172  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"llabs"173  (void)cabsl(x);174  // expected-warning@-1 {{using complex absolute value function 'cabsl' when argument is of integer type}}175  // expected-note@-2 {{use function 'llabs' instead}}176  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"llabs"177 178  (void)__builtin_abs(x);179  // expected-warning@-1{{absolute value function '__builtin_abs' given an argument of type 'long long' but has parameter of type 'int' which may cause truncation of value}}180  // expected-note@-2{{use function '__builtin_llabs' instead}}181  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:22}:"__builtin_llabs"182  (void)__builtin_labs(x);183  // expected-warning@-1{{absolute value function '__builtin_labs' given an argument of type 'long long' but has parameter of type 'long' which may cause truncation of value}}184  // expected-note@-2{{use function '__builtin_llabs' instead}}185  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_llabs"186  (void)__builtin_llabs(x);187 188  (void)__builtin_fabsf(x);189  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsf' when argument is of integer type}}190  // expected-note@-2 {{use function '__builtin_llabs' instead}}191  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_llabs"192  (void)__builtin_fabs(x);193  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabs' when argument is of integer type}}194  // expected-note@-2 {{use function '__builtin_llabs' instead}}195  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_llabs"196  (void)__builtin_fabsl(x);197  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsl' when argument is of integer type}}198  // expected-note@-2 {{use function '__builtin_llabs' instead}}199  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_llabs"200 201  (void)__builtin_cabsf(x);202  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsf' when argument is of integer type}}203  // expected-note@-2 {{use function '__builtin_llabs' instead}}204  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_llabs"205  (void)__builtin_cabs(x);206  // expected-warning@-1 {{using complex absolute value function '__builtin_cabs' when argument is of integer type}}207  // expected-note@-2 {{use function '__builtin_llabs' instead}}208  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_llabs"209  (void)__builtin_cabsl(x);210  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsl' when argument is of integer type}}211  // expected-note@-2 {{use function '__builtin_llabs' instead}}212  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_llabs"213}214 215void test_float(float x) {216  (void)abs(x);217  // expected-warning@-1 {{using integer absolute value function 'abs' when argument is of floating point type}}218  // expected-note@-2 {{use function 'fabsf' instead}}219  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:12}:"fabsf"220  (void)labs(x);221  // expected-warning@-1 {{using integer absolute value function 'labs' when argument is of floating point type}}222  // expected-note@-2 {{use function 'fabsf' instead}}223  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"fabsf"224  (void)llabs(x);225  // expected-warning@-1 {{using integer absolute value function 'llabs' when argument is of floating point type}}226  // expected-note@-2 {{use function 'fabsf' instead}}227  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabsf"228 229  (void)fabsf(x);230  (void)fabs(x);231  (void)fabsl(x);232 233  (void)cabsf(x);234  // expected-warning@-1 {{using complex absolute value function 'cabsf' when argument is of floating point type}}235  // expected-note@-2 {{use function 'fabsf' instead}}236  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabsf"237  (void)cabs(x);238  // expected-warning@-1 {{using complex absolute value function 'cabs' when argument is of floating point type}}239  // expected-note@-2 {{use function 'fabsf' instead}}240  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"fabsf"241  (void)cabsl(x);242  // expected-warning@-1 {{using complex absolute value function 'cabsl' when argument is of floating point type}}243  // expected-note@-2 {{use function 'fabsf' instead}}244  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabsf"245 246  (void)__builtin_abs(x);247  // expected-warning@-1 {{using integer absolute value function '__builtin_abs' when argument is of floating point type}}248  // expected-note@-2 {{use function '__builtin_fabsf' instead}}249  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:22}:"__builtin_fabsf"250  (void)__builtin_labs(x);251  // expected-warning@-1 {{using integer absolute value function '__builtin_labs' when argument is of floating point type}}252  // expected-note@-2 {{use function '__builtin_fabsf' instead}}253  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_fabsf"254  (void)__builtin_llabs(x);255  // expected-warning@-1 {{using integer absolute value function '__builtin_llabs' when argument is of floating point type}}256  // expected-note@-2 {{use function '__builtin_fabsf' instead}}257  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabsf"258 259  (void)__builtin_fabsf(x);260  (void)__builtin_fabs(x);261  (void)__builtin_fabsl(x);262 263  (void)__builtin_cabsf(x);264  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsf' when argument is of floating point type}}265  // expected-note@-2 {{use function '__builtin_fabsf' instead}}266  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabsf"267  (void)__builtin_cabs(x);268  // expected-warning@-1 {{using complex absolute value function '__builtin_cabs' when argument is of floating point type}}269  // expected-note@-2 {{use function '__builtin_fabsf' instead}}270  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_fabsf"271  (void)__builtin_cabsl(x);272  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsl' when argument is of floating point type}}273  // expected-note@-2 {{use function '__builtin_fabsf' instead}}274  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabsf"275}276 277void test_double(double x) {278  (void)abs(x);279  // expected-warning@-1 {{using integer absolute value function 'abs' when argument is of floating point type}}280  // expected-note@-2 {{use function 'fabs' instead}}281  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:12}:"fabs"282  (void)labs(x);283  // expected-warning@-1 {{using integer absolute value function 'labs' when argument is of floating point type}}284  // expected-note@-2 {{use function 'fabs' instead}}285  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"fabs"286  (void)llabs(x);287  // expected-warning@-1 {{using integer absolute value function 'llabs' when argument is of floating point type}}288  // expected-note@-2 {{use function 'fabs' instead}}289  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabs"290 291  (void)fabsf(x);292  // expected-warning@-1{{absolute value function 'fabsf' given an argument of type 'double' but has parameter of type 'float' which may cause truncation of value}}293  // expected-note@-2{{use function 'fabs' instead}}294  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabs"295  (void)fabs(x);296  (void)fabsl(x);297 298  (void)cabsf(x);299  // expected-warning@-1 {{using complex absolute value function 'cabsf' when argument is of floating point type}}300  // expected-note@-2 {{use function 'fabs' instead}}301  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabs"302  (void)cabs(x);303  // expected-warning@-1 {{using complex absolute value function 'cabs' when argument is of floating point type}}304  // expected-note@-2 {{use function 'fabs' instead}}305  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"fabs"306  (void)cabsl(x);307  // expected-warning@-1 {{using complex absolute value function 'cabsl' when argument is of floating point type}}308  // expected-note@-2 {{use function 'fabs' instead}}309  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabs"310 311  (void)__builtin_abs(x);312  // expected-warning@-1 {{using integer absolute value function '__builtin_abs' when argument is of floating point type}}313  // expected-note@-2 {{use function '__builtin_fabs' instead}}314  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:22}:"__builtin_fabs"315  (void)__builtin_labs(x);316  // expected-warning@-1 {{using integer absolute value function '__builtin_labs' when argument is of floating point type}}317  // expected-note@-2 {{use function '__builtin_fabs' instead}}318  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_fabs"319  (void)__builtin_llabs(x);320  // expected-warning@-1 {{using integer absolute value function '__builtin_llabs' when argument is of floating point type}}321  // expected-note@-2 {{use function '__builtin_fabs' instead}}322  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabs"323 324  (void)__builtin_fabsf(x);325  // expected-warning@-1{{absolute value function '__builtin_fabsf' given an argument of type 'double' but has parameter of type 'float' which may cause truncation of value}}326  // expected-note@-2{{use function '__builtin_fabs' instead}}327  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabs"328  (void)__builtin_fabs(x);329  (void)__builtin_fabsl(x);330 331  (void)__builtin_cabsf(x);332  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsf' when argument is of floating point type}}333  // expected-note@-2 {{use function '__builtin_fabs' instead}}334  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabs"335  (void)__builtin_cabs(x);336  // expected-warning@-1 {{using complex absolute value function '__builtin_cabs' when argument is of floating point type}}337  // expected-note@-2 {{use function '__builtin_fabs' instead}}338  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_fabs"339  (void)__builtin_cabsl(x);340  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsl' when argument is of floating point type}}341  // expected-note@-2 {{use function '__builtin_fabs' instead}}342  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabs"343}344 345void test_long_double(long double x) {346  (void)abs(x);347  // expected-warning@-1 {{using integer absolute value function 'abs' when argument is of floating point type}}348  // expected-note@-2 {{use function 'fabsl' instead}}349  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:12}:"fabsl"350  (void)labs(x);351  // expected-warning@-1 {{using integer absolute value function 'labs' when argument is of floating point type}}352  // expected-note@-2 {{use function 'fabsl' instead}}353  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"fabsl"354  (void)llabs(x);355  // expected-warning@-1 {{using integer absolute value function 'llabs' when argument is of floating point type}}356  // expected-note@-2 {{use function 'fabsl' instead}}357  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabsl"358 359  (void)fabsf(x);360  // expected-warning@-1{{absolute value function 'fabsf' given an argument of type 'long double' but has parameter of type 'float' which may cause truncation of value}}361  // expected-note@-2{{use function 'fabsl' instead}}362  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabsl"363  (void)fabs(x);364  // expected-warning@-1{{absolute value function 'fabs' given an argument of type 'long double' but has parameter of type 'double' which may cause truncation of value}}365  // expected-note@-2{{use function 'fabsl' instead}}366  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"fabsl"367  (void)fabsl(x);368 369  (void)cabsf(x);370  // expected-warning@-1 {{using complex absolute value function 'cabsf' when argument is of floating point type}}371  // expected-note@-2 {{use function 'fabsl' instead}}372  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabsl"373  (void)cabs(x);374  // expected-warning@-1 {{using complex absolute value function 'cabs' when argument is of floating point type}}375  // expected-note@-2 {{use function 'fabsl' instead}}376  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"fabsl"377  (void)cabsl(x);378  // expected-warning@-1 {{using complex absolute value function 'cabsl' when argument is of floating point type}}379  // expected-note@-2 {{use function 'fabsl' instead}}380  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"fabsl"381 382  (void)__builtin_abs(x);383  // expected-warning@-1 {{using integer absolute value function '__builtin_abs' when argument is of floating point type}}384  // expected-note@-2 {{use function '__builtin_fabsl' instead}}385  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:22}:"__builtin_fabsl"386  (void)__builtin_labs(x);387  // expected-warning@-1 {{using integer absolute value function '__builtin_labs' when argument is of floating point type}}388  // expected-note@-2 {{use function '__builtin_fabsl' instead}}389  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_fabsl"390  (void)__builtin_llabs(x);391  // expected-warning@-1 {{using integer absolute value function '__builtin_llabs' when argument is of floating point type}}392  // expected-note@-2 {{use function '__builtin_fabsl' instead}}393  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabsl"394 395  (void)__builtin_fabsf(x);396  // expected-warning@-1{{absolute value function '__builtin_fabsf' given an argument of type 'long double' but has parameter of type 'float' which may cause truncation of value}}397  // expected-note@-2{{use function '__builtin_fabsl' instead}}398  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabsl"399  (void)__builtin_fabs(x);400  // expected-warning@-1{{absolute value function '__builtin_fabs' given an argument of type 'long double' but has parameter of type 'double' which may cause truncation of value}}401  // expected-note@-2{{use function '__builtin_fabsl' instead}}402  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_fabsl"403  (void)__builtin_fabsl(x);404 405  (void)__builtin_cabsf(x);406  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsf' when argument is of floating point type}}407  // expected-note@-2 {{use function '__builtin_fabsl' instead}}408  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabsl"409  (void)__builtin_cabs(x);410  // expected-warning@-1 {{using complex absolute value function '__builtin_cabs' when argument is of floating point type}}411  // expected-note@-2 {{use function '__builtin_fabsl' instead}}412  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_fabsl"413  (void)__builtin_cabsl(x);414  // expected-warning@-1 {{using complex absolute value function '__builtin_cabsl' when argument is of floating point type}}415  // expected-note@-2 {{use function '__builtin_fabsl' instead}}416  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_fabsl"417}418 419void test_complex_float(_Complex float x) {420  (void)abs(x);421  // expected-warning@-1 {{using integer absolute value function 'abs' when argument is of complex type}}422  // expected-note@-2 {{use function 'cabsf' instead}}423  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:12}:"cabsf"424  (void)labs(x);425  // expected-warning@-1 {{using integer absolute value function 'labs' when argument is of complex type}}426  // expected-note@-2 {{use function 'cabsf' instead}}427  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"cabsf"428  (void)llabs(x);429  // expected-warning@-1 {{using integer absolute value function 'llabs' when argument is of complex type}}430  // expected-note@-2 {{use function 'cabsf' instead}}431  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabsf"432 433  (void)fabsf(x);434  // expected-warning@-1 {{using floating point absolute value function 'fabsf' when argument is of complex type}}435  // expected-note@-2 {{use function 'cabsf' instead}}436  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabsf"437  (void)fabs(x);438  // expected-warning@-1 {{using floating point absolute value function 'fabs' when argument is of complex type}}439  // expected-note@-2 {{use function 'cabsf' instead}}440  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"cabsf"441  (void)fabsl(x);442  // expected-warning@-1 {{using floating point absolute value function 'fabsl' when argument is of complex type}}443  // expected-note@-2 {{use function 'cabsf' instead}}444  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabsf"445 446  (void)cabsf(x);447  (void)cabs(x);448  (void)cabsl(x);449 450  (void)__builtin_abs(x);451  // expected-warning@-1 {{using integer absolute value function '__builtin_abs' when argument is of complex type}}452  // expected-note@-2 {{use function '__builtin_cabsf' instead}}453  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:22}:"__builtin_cabsf"454  (void)__builtin_labs(x);455  // expected-warning@-1 {{using integer absolute value function '__builtin_labs' when argument is of complex type}}456  // expected-note@-2 {{use function '__builtin_cabsf' instead}}457  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_cabsf"458  (void)__builtin_llabs(x);459  // expected-warning@-1 {{using integer absolute value function '__builtin_llabs' when argument is of complex type}}460  // expected-note@-2 {{use function '__builtin_cabsf' instead}}461  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabsf"462 463  (void)__builtin_fabsf(x);464  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsf' when argument is of complex type}}465  // expected-note@-2 {{use function '__builtin_cabsf' instead}}466  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabsf"467  (void)__builtin_fabs(x);468  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabs' when argument is of complex type}}469  // expected-note@-2 {{use function '__builtin_cabsf' instead}}470  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_cabsf"471  (void)__builtin_fabsl(x);472  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsl' when argument is of complex type}}473  // expected-note@-2 {{use function '__builtin_cabsf' instead}}474  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabsf"475 476  (void)__builtin_cabsf(x);477  (void)__builtin_cabs(x);478  (void)__builtin_cabsl(x);479}480 481void test_complex_double(_Complex double x) {482  (void)abs(x);483  // expected-warning@-1 {{using integer absolute value function 'abs' when argument is of complex type}}484  // expected-note@-2 {{use function 'cabs' instead}}485  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:12}:"cabs"486  (void)labs(x);487  // expected-warning@-1 {{using integer absolute value function 'labs' when argument is of complex type}}488  // expected-note@-2 {{use function 'cabs' instead}}489  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"cabs"490  (void)llabs(x);491  // expected-warning@-1 {{using integer absolute value function 'llabs' when argument is of complex type}}492  // expected-note@-2 {{use function 'cabs' instead}}493  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabs"494 495  (void)fabsf(x);496  // expected-warning@-1 {{using floating point absolute value function 'fabsf' when argument is of complex type}}497  // expected-note@-2 {{use function 'cabs' instead}}498  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabs"499  (void)fabs(x);500  // expected-warning@-1 {{using floating point absolute value function 'fabs' when argument is of complex type}}501  // expected-note@-2 {{use function 'cabs' instead}}502  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"cabs"503  (void)fabsl(x);504  // expected-warning@-1 {{using floating point absolute value function 'fabsl' when argument is of complex type}}505  // expected-note@-2 {{use function 'cabs' instead}}506  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabs"507 508  (void)cabsf(x);509  // expected-warning@-1 {{absolute value function 'cabsf' given an argument of type '_Complex double' but has parameter of type '_Complex float' which may cause truncation of value}}510  // expected-note@-2 {{use function 'cabs' instead}}511  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabs"512  (void)cabs(x);513  (void)cabsl(x);514 515  (void)__builtin_abs(x);516  // expected-warning@-1 {{using integer absolute value function '__builtin_abs' when argument is of complex type}}517  // expected-note@-2 {{use function '__builtin_cabs' instead}}518  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:22}:"__builtin_cabs"519  (void)__builtin_labs(x);520  // expected-warning@-1 {{using integer absolute value function '__builtin_labs' when argument is of complex type}}521  // expected-note@-2 {{use function '__builtin_cabs' instead}}522  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_cabs"523  (void)__builtin_llabs(x);524  // expected-warning@-1 {{using integer absolute value function '__builtin_llabs' when argument is of complex type}}525  // expected-note@-2 {{use function '__builtin_cabs' instead}}526  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabs"527 528  (void)__builtin_fabsf(x);529  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsf' when argument is of complex type}}530  // expected-note@-2 {{use function '__builtin_cabs' instead}}531  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabs"532  (void)__builtin_fabs(x);533  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabs' when argument is of complex type}}534  // expected-note@-2 {{use function '__builtin_cabs' instead}}535  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_cabs"536  (void)__builtin_fabsl(x);537  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsl' when argument is of complex type}}538  // expected-note@-2 {{use function '__builtin_cabs' instead}}539  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabs"540 541  (void)__builtin_cabsf(x);542  // expected-warning@-1 {{absolute value function '__builtin_cabsf' given an argument of type '_Complex double' but has parameter of type '_Complex float' which may cause truncation of value}}543  // expected-note@-2 {{use function '__builtin_cabs' instead}}544  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabs"545  (void)__builtin_cabs(x);546  (void)__builtin_cabsl(x);547}548 549void test_complex_long_double(_Complex long double x) {550  (void)abs(x);551  // expected-warning@-1 {{using integer absolute value function 'abs' when argument is of complex type}}552  // expected-note@-2 {{use function 'cabsl' instead}}553  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:12}:"cabsl"554  (void)labs(x);555  // expected-warning@-1 {{using integer absolute value function 'labs' when argument is of complex type}}556  // expected-note@-2 {{use function 'cabsl' instead}}557  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"cabsl"558  (void)llabs(x);559  // expected-warning@-1 {{using integer absolute value function 'llabs' when argument is of complex type}}560  // expected-note@-2 {{use function 'cabsl' instead}}561  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabsl"562 563  (void)fabsf(x);564  // expected-warning@-1 {{using floating point absolute value function 'fabsf' when argument is of complex type}}565  // expected-note@-2 {{use function 'cabsl' instead}}566  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabsl"567  (void)fabs(x);568  // expected-warning@-1 {{using floating point absolute value function 'fabs' when argument is of complex type}}569  // expected-note@-2 {{use function 'cabsl' instead}}570  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"cabsl"571  (void)fabsl(x);572  // expected-warning@-1 {{using floating point absolute value function 'fabsl' when argument is of complex type}}573  // expected-note@-2 {{use function 'cabsl' instead}}574  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabsl"575 576  (void)cabsf(x);577  // expected-warning@-1 {{absolute value function 'cabsf' given an argument of type '_Complex long double' but has parameter of type '_Complex float' which may cause truncation of value}}578  // expected-note@-2 {{use function 'cabsl' instead}}579  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:"cabsl"580  (void)cabs(x);581  // expected-warning@-1 {{absolute value function 'cabs' given an argument of type '_Complex long double' but has parameter of type '_Complex double' which may cause truncation of value}}582  // expected-note@-2 {{use function 'cabsl' instead}}583  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:"cabsl"584  (void)cabsl(x);585 586  (void)__builtin_abs(x);587  // expected-warning@-1 {{using integer absolute value function '__builtin_abs' when argument is of complex type}}588  // expected-note@-2 {{use function '__builtin_cabsl' instead}}589  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:22}:"__builtin_cabsl"590  (void)__builtin_labs(x);591  // expected-warning@-1 {{using integer absolute value function '__builtin_labs' when argument is of complex type}}592  // expected-note@-2 {{use function '__builtin_cabsl' instead}}593  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_cabsl"594  (void)__builtin_llabs(x);595  // expected-warning@-1 {{using integer absolute value function '__builtin_llabs' when argument is of complex type}}596  // expected-note@-2 {{use function '__builtin_cabsl' instead}}597  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabsl"598 599  (void)__builtin_fabsf(x);600  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsf' when argument is of complex type}}601  // expected-note@-2 {{use function '__builtin_cabsl' instead}}602  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabsl"603  (void)__builtin_fabs(x);604  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabs' when argument is of complex type}}605  // expected-note@-2 {{use function '__builtin_cabsl' instead}}606  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_cabsl"607  (void)__builtin_fabsl(x);608  // expected-warning@-1 {{using floating point absolute value function '__builtin_fabsl' when argument is of complex type}}609  // expected-note@-2 {{use function '__builtin_cabsl' instead}}610  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabsl"611 612  (void)__builtin_cabsf(x);613  // expected-warning@-1 {{absolute value function '__builtin_cabsf' given an argument of type '_Complex long double' but has parameter of type '_Complex float' which may cause truncation of value}}614  // expected-note@-2 {{use function '__builtin_cabsl' instead}}615  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:"__builtin_cabsl"616  (void)__builtin_cabs(x);617  // expected-warning@-1 {{absolute value function '__builtin_cabs' given an argument of type '_Complex long double' but has parameter of type '_Complex double' which may cause truncation of value}}618  // expected-note@-2 {{use function '__builtin_cabsl' instead}}619  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:"__builtin_cabsl"620  (void)__builtin_cabsl(x);621}622 623void test_unsigned_int(unsigned int x) {624  (void)abs(x);625  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}626  // expected-note@-2 {{remove the call to 'abs' since unsigned values cannot be negative}}627  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:12}:""628  (void)labs(x);629  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}630  // expected-note@-2 {{remove the call to 'labs' since unsigned values cannot be negative}}631  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:""632  (void)llabs(x);633  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}634  // expected-note@-2 {{remove the call to 'llabs' since unsigned values cannot be negative}}635  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:""636 637  (void)fabsf(x);638  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}639  // expected-note@-2 {{remove the call to 'fabsf' since unsigned values cannot be negative}}640  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:""641  (void)fabs(x);642  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}643  // expected-note@-2 {{remove the call to 'fabs' since unsigned values cannot be negative}}644  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:""645  (void)fabsl(x);646  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}647  // expected-note@-2 {{remove the call to 'fabsl' since unsigned values cannot be negative}}648  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:""649 650  (void)cabsf(x);651  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}652  // expected-note@-2 {{remove the call to 'cabsf' since unsigned values cannot be negative}}653  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:""654  (void)cabs(x);655  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}656  // expected-note@-2 {{remove the call to 'cabs' since unsigned values cannot be negative}}657  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:""658  (void)cabsl(x);659  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}660  // expected-note@-2 {{remove the call to 'cabsl' since unsigned values cannot be negative}}661  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:""662 663  (void)__builtin_abs(x);664  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}665  // expected-note@-2 {{remove the call to '__builtin_abs' since unsigned values cannot be negative}}666  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:22}:""667  (void)__builtin_labs(x);668  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}669  // expected-note@-2 {{remove the call to '__builtin_labs' since unsigned values cannot be negative}}670  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:""671  (void)__builtin_llabs(x);672  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}673  // expected-note@-2 {{remove the call to '__builtin_llabs' since unsigned values cannot be negative}}674  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:""675 676  (void)__builtin_fabsf(x);677  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}678  // expected-note@-2 {{remove the call to '__builtin_fabsf' since unsigned values cannot be negative}}679  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:""680  (void)__builtin_fabs(x);681  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}682  // expected-note@-2 {{remove the call to '__builtin_fabs' since unsigned values cannot be negative}}683  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:""684  (void)__builtin_fabsl(x);685  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}686  // expected-note@-2 {{remove the call to '__builtin_fabsl' since unsigned values cannot be negative}}687  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:""688 689  (void)__builtin_cabsf(x);690  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}691  // expected-note@-2 {{remove the call to '__builtin_cabsf' since unsigned values cannot be negative}}692  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:""693  (void)__builtin_cabs(x);694  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}695  // expected-note@-2 {{remove the call to '__builtin_cabs' since unsigned values cannot be negative}}696  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:""697  (void)__builtin_cabsl(x);698  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned int' has no effect}}699  // expected-note@-2 {{remove the call to '__builtin_cabsl' since unsigned values cannot be negative}}700  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:""701}702 703void test_unsigned_long(unsigned long x) {704  (void)abs(x);705  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}706  // expected-note@-2 {{remove the call to 'abs' since unsigned values cannot be negative}}707  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:12}:""708  (void)labs(x);709  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}710  // expected-note@-2 {{remove the call to 'labs' since unsigned values cannot be negative}}711  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:""712  (void)llabs(x);713  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}714  // expected-note@-2 {{remove the call to 'llabs' since unsigned values cannot be negative}}715  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:""716 717  (void)fabsf(x);718  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}719  // expected-note@-2 {{remove the call to 'fabsf' since unsigned values cannot be negative}}720  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:""721  (void)fabs(x);722  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}723  // expected-note@-2 {{remove the call to 'fabs' since unsigned values cannot be negative}}724  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:""725  (void)fabsl(x);726  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}727  // expected-note@-2 {{remove the call to 'fabsl' since unsigned values cannot be negative}}728  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:""729 730  (void)cabsf(x);731  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}732  // expected-note@-2 {{remove the call to 'cabsf' since unsigned values cannot be negative}}733  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:""734  (void)cabs(x);735  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}736  // expected-note@-2 {{remove the call to 'cabs' since unsigned values cannot be negative}}737  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:13}:""738  (void)cabsl(x);739  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}740  // expected-note@-2 {{remove the call to 'cabsl' since unsigned values cannot be negative}}741  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:14}:""742 743  (void)__builtin_abs(x);744  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}745  // expected-note@-2 {{remove the call to '__builtin_abs' since unsigned values cannot be negative}}746  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:22}:""747  (void)__builtin_labs(x);748  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}749  // expected-note@-2 {{remove the call to '__builtin_labs' since unsigned values cannot be negative}}750  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:""751  (void)__builtin_llabs(x);752  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}753  // expected-note@-2 {{remove the call to '__builtin_llabs' since unsigned values cannot be negative}}754  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:""755 756  (void)__builtin_fabsf(x);757  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}758  // expected-note@-2 {{remove the call to '__builtin_fabsf' since unsigned values cannot be negative}}759  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:""760  (void)__builtin_fabs(x);761  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}762  // expected-note@-2 {{remove the call to '__builtin_fabs' since unsigned values cannot be negative}}763  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:""764  (void)__builtin_fabsl(x);765  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}766  // expected-note@-2 {{remove the call to '__builtin_fabsl' since unsigned values cannot be negative}}767  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:""768 769  (void)__builtin_cabsf(x);770  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}771  // expected-note@-2 {{remove the call to '__builtin_cabsf' since unsigned values cannot be negative}}772  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:""773  (void)__builtin_cabs(x);774  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}775  // expected-note@-2 {{remove the call to '__builtin_cabs' since unsigned values cannot be negative}}776  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:23}:""777  (void)__builtin_cabsl(x);778  // expected-warning@-1 {{taking the absolute value of unsigned type 'unsigned long' has no effect}}779  // expected-note@-2 {{remove the call to '__builtin_cabsl' since unsigned values cannot be negative}}780  // CHECK: fix-it:"{{.*}}":{[[@LINE-3]]:9-[[@LINE-3]]:24}:""781}782 783long long test_array(void) {784  return llabs((long long[]){1});785  // expected-warning@-1 {{absolute value of array type}}786}787long long test_function_pointer(void) {788  return llabs(&test_function_pointer);789  // expected-warning@-1 {{absolute value of pointer type}}790}791long long test_void_pointer(void *x) {792  return llabs(x);793  // expected-warning@-1 {{absolute value of pointer type}}794}795long long test_function(void) {796  return llabs(test_function);797  // expected-warning@-1 {{absolute value of function type}}798}799