From 1a804ada46b192c110b3ecf2a361f37b5f08611e Mon Sep 17 00:00:00 2001 From: tholo Date: Tue, 5 Mar 1996 08:48:15 +0000 Subject: [PATCH] Work around a GCC code generation bug if XXX_BROKEN_GCC; fixed NetBSD PR 2097 --- usr.bin/xlint/lint1/cgram.y | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/usr.bin/xlint/lint1/cgram.y b/usr.bin/xlint/lint1/cgram.y index e65584ac998..502994decc0 100644 --- a/usr.bin/xlint/lint1/cgram.y +++ b/usr.bin/xlint/lint1/cgram.y @@ -1607,15 +1607,26 @@ toicon(tn) } else { i = (int)v->v_quad; if (isutyp(t)) { - if ((u_quad_t)v->v_quad > INT_MAX) { + if ((u_quad_t)v->v_quad > UINT_MAX) { /* integral constant too large */ warning(56); } } else { +#ifdef XXX_BROKEN_GCC + if (v->v_quad > INT_MAX) { + /* integral constant too large */ + warning(56); + } + if (v->v_quad < INT_MIN) { + /* integral constant too large */ + warning(56); + } +#else if (v->v_quad > INT_MAX || v->v_quad < INT_MIN) { /* integral constant too large */ warning(56); } +#endif } } free(v); -- 2.20.1