l i n u x - u s e r s - g r o u p - o f - d a v i s
L U G O D
 
Next Meeting:
November 4: Social gathering
Next Installfest:
TBD
Latest News:
Oct. 24: LUGOD election season has begun!
Page last updated:
2004 Jun 10 09:25

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
[vox-tech] gdb segfaults when printing long double complex variables
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vox-tech] gdb segfaults when printing long double complex variables



Bug: GDB segfaults when printing long double complex variables.

Sample Code:

1       #include <tgmath.h>
2       #include <stdio.h>
3
4       int main(void)
5       {
6               complex a;
7               double complex b;
8               long double complex c;
9
10              a = 5 + 2I;
11              printf("%f + %fi\n", __real__ a, __imag__ a);
12
13              b = 5.0 + 2.0I;
14              printf("%f + %fi\n", __real__ b, __imag__ b);
15
16              c = 5.0L + 2.0LI;
17              printf("%Lf + %Lfi\n", __real__ c, __imag__ c);
18
19              return 0;
20      }



The program runs fine:

   p@satan$ gcc-3.3 -g -W -Wall blah.c 
   p@satan$ ./a.out 
   5.000000 + 2.000000i
   5.000000 + 2.000000i
   5.000000 + 2.000000i

The program runs fine under gdb:

   (gdb) run
   Starting program: /home/p/a.out 
   5.000000 + 2.000000i
   5.000000 + 2.000000i
   5.000000 + 2.000000i

   Program exited normally.

But GDB itself cannot print long double complex variables without
segfaulting:

   (gdb) break 18
   Breakpoint 1 at 0x8048436: file blah.c, line 18.
   (gdb) run
   Starting program: /home/p/a.out 
   5.000000 + 2.000000i
   5.000000 + 2.000000i
   5.000000 + 2.000000i

   Breakpoint 1, main () at blah.c:19
   19              return 0;
   (gdb) p a
   $1 = 5 + 2 * I
   (gdb) p b
   $2 = 5 + 2 * I
   (gdb) p c
   Segmentation fault (core dumped)

This is very reproducible, unfortunately.  This bug showed up at the
worst possible moment...

Pete

-- 
In theory, theory and practise are the same.  In practise, they aren't.
GPG Instructions: http://www.dirac.org/linux/gpg
GPG Fingerprint: B9F1 6CF3 47C4 7CD8 D33E 70A9 A3B9 1945 67EA 951D
_______________________________________________
vox-tech mailing list
vox-tech@lists.lugod.org
http://lists.lugod.org/mailman/listinfo/vox-tech



LinkedIn
LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
facebook
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
EDGE Tech Corp.
For donating some give-aways for our meetings.