From cmascott@world.std.com  Thu Jun 25 09:20:44 1998
Received: from europe.std.com (europe.std.com [199.172.62.20])
          by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id JAA04066
          for <FreeBSD-gnats-submit@freebsd.org>; Thu, 25 Jun 1998 09:20:29 -0700 (PDT)
          (envelope-from cmascott@world.std.com)
Received: from world.std.com by europe.std.com (8.7.6/BZS-8-1.0)
	id MAA27055; Thu, 25 Jun 1998 12:20:25 -0400 (EDT)
Received: from europa.my.pc (world-f.std.com) by world.std.com (TheWorld/Spike-2.0)
	id AA23352; Thu, 25 Jun 1998 12:20:22 -0400
Received: (from cem@localhost)
	by europa.my.pc (8.8.8/8.8.8) id MAA00692;
	Thu, 25 Jun 1998 12:19:56 -0400 (EDT)
	(envelope-from cem)
Message-Id: <199806251619.MAA00692@europa.my.pc>
Date: Thu, 25 Jun 1998 12:19:56 -0400 (EDT)
From: cmascott@world.std.com
Reply-To: cmascott@world.std.com
To: FreeBSD-gnats-submit@freebsd.org
Subject: xlint: "warning: integral constant too large"
X-Send-Pr-Version: 3.2

>Number:         7066
>Category:       bin
>Synopsis:       xlint/gcc: "warning: integral constant too large"
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jun 25 09:30:01 PDT 1998
>Closed-Date:    Sat Jun 27 05:33:51 PDT 1998
>Last-Modified:  Sat Jun 27 05:34:12 PDT 1998
>Originator:     Carl Mascott
>Release:        FreeBSD 2.2.6-RELEASE i386
>Organization:
>Environment:

	N/A

>Description:

Xlint appears to have a bug.  It issues many of these:

	warning: integral constant too large

when in fact there is no such problem.

>How-To-Repeat:

Run xlint (lint) on virtually any C source file.

>Fix:
	
It turns out that this is really a bug in gcc 2.7.2.1.
Gcc -O fails to compile toicon() in lint1/cgram.c correctly.
To work around this:

1. Build xlint normally.

2. Delete lint1/cgram.o.

3. In the top-level xlint directory say

	make CFLAGS=

   (define CFLAGS to be empty).

   This will recompile just lint1/cgram.c without
   optimization, giving you a new lint1/lint1.

   NOTE: You MUST do this from the top-level xlint
   directory, not from the lint1 subdirectory.

4. Install the new lint1 in /usr/libexec.
>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->suspended 
State-Changed-By: phk 
State-Changed-When: Sat Jun 27 02:20:37 PDT 1998 
State-Changed-Why:  
awaiting committer 
should possibly be sent to the gcc people instead. 
State-Changed-From-To: suspended->closed 
State-Changed-By: phk 
State-Changed-When: Sat Jun 27 05:33:51 PDT 1998 
State-Changed-Why:  
From Bruce: 
-current already has a better workaround in rev.1.2 of lint1/cgram.y. 
>Unformatted:
