1*b2baa501Srillig /* $NetBSD: lex_floating.c,v 1.4 2023/03/28 14:44:34 rillig Exp $ */ 23ce615ebSrillig # 3 "lex_floating.c" 33ce615ebSrillig 43ce615ebSrillig /* 53ce615ebSrillig * Tests for lexical analysis of floating constants. 63ce615ebSrillig * 73ce615ebSrillig * C99 6.4.4.2 "Floating constants" 83ce615ebSrillig */ 93ce615ebSrillig 10*b2baa501Srillig /* lint1-extra-flags: -X 351 */ 11*b2baa501Srillig 123ce615ebSrillig void sinkf(float); 133ce615ebSrillig void sinkd(double); 143ce615ebSrillig void sinkl(long double); 153ce615ebSrillig 163ce615ebSrillig void test_float(void)173ce615ebSrilligtest_float(void) 183ce615ebSrillig { 193ce615ebSrillig sinkf(0.0F); 203ce615ebSrillig sinkf(0.0f); 213ce615ebSrillig sinkf(-0.0F); 223ce615ebSrillig sinkf(-0.0f); 233ce615ebSrillig } 243ce615ebSrillig 253ce615ebSrillig void test_double(void)263ce615ebSrilligtest_double(void) 273ce615ebSrillig { 283ce615ebSrillig // https://bugs.java.com/bugdatabase/view_bug.do?bug_id=4396272 293ce615ebSrillig sinkd(2.2250738585072012e-308); 30a4a927acSrillig /* expect+1: error: syntax error 'x' [249] */ 31a4a927acSrillig sinkd(1.23x); 323ce615ebSrillig } 333ce615ebSrillig 343ce615ebSrillig void test_long_double(void)353ce615ebSrilligtest_long_double(void) 363ce615ebSrillig { 373ce615ebSrillig sinkl(2.2250738585072012e-308L); 383ce615ebSrillig } 398ee241b0Srillig 408ee241b0Srillig void test_hex(void)418ee241b0Srilligtest_hex(void) 428ee241b0Srillig { 438ee241b0Srillig sinkd(0x1.cp4); 448ee241b0Srillig } 45