Article View: gnu.gcc.bug
Article #932Gcc2 -dN switch doesn't work
From: meissner
Date: Wed, 12 Aug 1992 10:20
Date: Wed, 12 Aug 1992 10:20
351 lines
7724 bytes
7724 bytes
The -dN switch (which is supposed to dump all macro names at the end
of preprocessing) doesn't actually dump the names, it just dumps out
#define, which is kind of useless. The -dD output does give the
desired information (along with the preprocessed output), so maybe we
should just delete -dN support.
For example on OSF/1, with the file:
#include <stdio.h>
main(){
printf("Hello World!\n");
return 0;
}
I get the output (I have squished blank lines):
# 1 "hello2.c"
# 1 "/usr/include/stdio.h" 1 3
#define
# 1 "/usr/include/standards.h" 1 3
#define
#define
#define
#define
#define
#define
#define
#define
# 172 "/usr/include/stdio.h" 2 3
#define
#define
typedef unsigned long size_t;
#define
typedef long fpos_t;
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
# 1 "/usr/include/sys/seek.h" 1 3
#define
#define
#define
#define
# 238 "/usr/include/stdio.h" 2 3
typedef struct {
int _cnt;
unsigned char *_ptr;
unsigned char *_base;
int _bufsiz;
short _flag;
short _file;
long _unused[2];
char *__newbase;
unsigned char *_bufendp;
} FILE;
extern FILE __iob[];
#define
#define
#define
#define
#define
extern size_t fread (void *, size_t, size_t, FILE *) ;
extern size_t fwrite (const void *, size_t, size_t, FILE *) ;
extern int __flsbuf (int, FILE *) ;
extern int __filbuf (FILE *) ;
extern int ferror (FILE *) ;
extern int feof (FILE *) ;
extern void clearerr (FILE *) ;
extern int putchar (int) ;
extern int getchar (void) ;
extern int putc (int, FILE *) ;
extern int getc (FILE *) ;
extern int remove (const char *) ;
extern int rename (const char *, const char *) ;
extern FILE *tmpfile (void) ;
extern char *tmpnam (char *) ;
extern int fclose (FILE *) ;
extern int fflush (FILE *) ;
extern FILE *fopen (const char *, const char *) ;
extern FILE *freopen (const char *, const char *, FILE *) ;
extern void setbuf (FILE *, char *) ;
extern int setvbuf (FILE *, char *, int, size_t) ;
extern int fprintf (FILE *, const char *, ...) ;
extern int fscanf (FILE *, const char *, ...) ;
extern int printf (const char *, ...) ;
extern int scanf (const char *, ...) ;
extern int sprintf (char *, const char *, ...) ;
extern int sscanf (const char *, const char *, ...) ;
#define
# 1 "/usr/include/va_list.h" 1 3
#define
typedef char *__va_list;
# 306 "/usr/include/stdio.h" 2 3
extern int vfprintf (FILE *, const char *, __va_list) ;
extern int vprintf (const char *, __va_list) ;
extern int vsprintf (char *, const char *, __va_list) ;
extern int fgetc (FILE *) ;
extern char *fgets (char *, int, FILE *) ;
extern int fputc (int, FILE *) ;
extern int fputs (const char *, FILE *) ;
extern char *gets (char *) ;
extern int puts (const char *) ;
extern int ungetc (int, FILE *) ;
extern int fgetpos (FILE *, fpos_t *) ;
extern int fseek (FILE *, long, int) ;
extern int fsetpos (FILE *, const fpos_t *) ;
extern long ftell (FILE *) ;
extern void rewind (FILE *) ;
extern void perror (const char *) ;
#define
#define
#define
#define
#define
#define
# 392 "/usr/include/stdio.h" 3
#define
#define
#define
#define
#define
#define
#define
# 1 "/usr/include/sys/types.h" 1 3
#define
# 1 "/usr/include/machine/types.h" 1 3
typedef struct { int r[1]; } *physadr_t;
typedef struct label_t {
int val[12];
} label_t;
typedef physadr_t physadr;
#define
#define
#define
# 150 "/usr/include/sys/types.h" 2 3
#define
typedef int ptrdiff_t;
#define
#define
typedef unsigned int wchar_t;
#define
typedef unsigned int wctype_t;
#define
typedef long time_t;
#define
typedef unsigned int clock_t;
typedef long ssize_t;
typedef unsigned char uchar_t;
typedef unsigned short ushort_t;
typedef unsigned int uint_t;
typedef unsigned long ulong_t;
typedef long level_t;
typedef long daddr_t;
typedef char * caddr_t;
typedef long * qaddr_t;
typedef ulong_t ino_t;
typedef short cnt_t;
typedef long dev_t;
typedef long off_t;
typedef long paddr_t;
typedef ushort_t nlink_t;
typedef long key_t;
typedef ulong_t mode_t;
typedef ulong_t uid_t;
typedef ulong_t gid_t;
typedef void * mid_t;
typedef long pid_t;
typedef char slab_t[12];
#define
typedef unsigned int wint_t;
typedef unsigned int sigset_t;
#define
#define
typedef void (*sig_t)(int);
# 1 "/usr/include/mach/machine/vm_types.h" 1 3
#define
typedef unsigned int vm_offset_t;
typedef unsigned int vm_size_t;
# 275 "/usr/include/sys/types.h" 2 3
typedef uchar_t uchar;
typedef ushort_t ushort;
typedef uint_t uint;
typedef ulong_t ulong;
typedef uchar_t u_char;
typedef ushort_t u_short;
typedef uint_t u_int;
typedef ulong_t u_long;
typedef struct _quad { long val[2]; } quad;
typedef long swblk_t;
typedef u_long fixpt_t;
#define
#define
typedef long fd_mask;
#define
#define
typedef struct fd_set {
fd_mask fds_bits[(((256 )+(( (sizeof(fd_mask) * 8 ) )-1))/( (sizeof(fd_mask) * 8 ) )) ];
} fd_set;
#define
#define
#define
#define
# 416 "/usr/include/stdio.h" 2 3
#define
#define
extern int fileno (FILE *) ;
extern FILE *fdopen (int, const char *) ;
#define
#define
extern int getw (FILE *) ;
extern int pclose (FILE *) ;
extern int putw (int, FILE*) ;
extern FILE *popen (const char *, const char *) ;
extern char *tempnam (const char*, const char*) ;
# 1 "/usr/include/sys/limits.h" 1 3
#define
# 1 "/usr/include/machine/machlimits.h" 1 3
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
# 131 "/usr/include/sys/limits.h" 2 3
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
# 1 "/usr/include/sys/syslimits.h" 1 3
#define
#define
#define
#define
#define
#define
#define
#define
# 203 "/usr/include/sys/limits.h" 2 3
# 1 "/usr/ccs/gcc-lib/mips-dec-osfrose/2.2.2/include/float.h" 1 3
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
# 215 "/usr/include/sys/limits.h" 2 3
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
# 447 "/usr/include/stdio.h" 2 3
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
extern void setbuffer (FILE *, char*, int) ;
extern void setlinebuf (FILE *) ;
# 1 "hello2.c" 2
main(){
printf("Hello World!\n");
return 0;
}
Technical Details
Message-ID:
<9208121820.AA04282@curley.osf.org>Path:
arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!osf.ORG!meissnerShow Full Headers
Complete Article Headers
Newsgroups: gnu.gcc.bug Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!osf.ORG!meissner From: meissner@osf.ORG Subject: Gcc2 -dN switch doesn't work Message-ID: <9208121820.AA04282@curley.osf.org> Sender: gnulists@ai.mit.edu Organization: GNUs Not Usenet Distribution: gnu Date: Wed, 12 Aug 1992 10:20:08 GMT Approved: bug-gcc@prep.ai.mit.edu Lines: 352