This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Fix libgomp Fortran tests


On Fri, Sep 08, 2006 at 04:10:53PM +0200, Tobias Schl?ter wrote:
> Steve Kargl <sgk@troutmask.apl.washington.edu> wrote on Fri, 08 Sep 2006:
>>>However, in a DATA statement, the values are not "constants", they are
>>>"data-stmt-constants", defined in rule R540, and these use signed
>>>literal constants (including signed-int-literal-constant) rather than
>>>unsigned ones.  As expressions are not allowed as DATA statement values,
>>>the interpretation of a negative integer remains unambiguous.
>>>
>>>Thus, while
>>>
>>>  INTEGER J = -2147493648
>>>
>>>is not permitted,
>>>
>>>  INTEGER J
>>>  DATA J / -2147493648 /
>>>
>>>is permitted.  (Note that 4.3.1.1, line 25, explicitly states that "Any
>>>integer value may be represented as a signed-int-literal-constant.")
>>>
>>
>>Brooks,
>>
>>Can you open a PR?  I did not realize that there was
>>this hair splitting.  Oh, and this isn't going to be
>>easy to fix.
>
> match_integer_constant() has a parameter signflag which -- if set in  
> the right places, i.e. set everywhere a signed-integer-constant is  
> expected -- should be making that difference automatically.
> 

Tobi, thanks for pointing this out.  gfortran appears to do
the Right Thing with the data statement.

> ps I plan to come back to gfortran development, but I still have too  
> much on my plate.
> 

That's good news.  Both pault and myself have been slowing down.
We can always use another pair of hands and eyes.

-- 
Steve


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]