This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/48720] quad precision literals do not work
- From: "sgk at troutmask dot apl.washington.edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 22 Apr 2011 15:16:28 +0000
- Subject: [Bug fortran/48720] quad precision literals do not work
- Auto-submitted: auto-generated
- References: <bug-48720-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48720
--- Comment #6 from Steve Kargl <sgk at troutmask dot apl.washington.edu> 2011-04-22 15:16:02 UTC ---
On Fri, Apr 22, 2011 at 08:00:33AM -0700, Steve Kargl wrote:
> On Fri, Apr 22, 2011 at 12:47:03PM +0000, jvdelisle at frontier dot com wrote:
> > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48720
> >
> > --- Comment #4 from jvdelisle at frontier dot com 2011-04-22 12:46:16 UTC ---
> > On 04/21/2011 09:08 PM, kargl at gcc dot gnu.org wrote:
> > --- snip ---
> > >>
> > >> I think we are not handling the 'q' as any more than an exponent marker. 'e'
> > >> works just as well.
> > >
> > > Oh my, is gfortran accepting 1.1q0. Let's stop that
> > > right now! Use 1.1e0_16.
> > >
> >
> > Agree, and its in the front end somewhere.
> >
>
> It's match_real_constant in primary.c.
>
> I suppose that question is do we want to disallow q.
>
Reading the code suggests that there are other problems if we
continue to allow q.
program foo
real(8) d
real(16) q
q = 1.q0_16
d = 1.d0_8
print *, d, q
end program foo
troutmask:sgk[203] gfc4x -o z ui.f90
ui.f90:5.13:
d = 1.d0_8
1
Error: Real number at (1) has a 'd' exponent and an explicit kind
The above is required by the standard, so I think one should
also mandate a similar error fro 1.q0_16.