tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

struct terminal in /usr/include/term.h


Today, I found that emacs trunk no longer built on NetBSD-current due
to symbol conflict (see below).  Emacs uses struct terminal for a long
time for own purpose but the conflict doesn't appear until
emacs/src/sysdep.c is changed to include <term.h> recently.

It looks like Linux or FreeBSD uses `struct term' instead of `struct
terminal' to typedef `TERMINAL'.

Is there any reason we picked the symbol `terminal' instead?  If there
is no specific reason, I guess it is better to rename it.


gcc -c  -Demacs -DHAVE_CONFIG_H  -I. -I/home/enami/src/emacs/src           
-I/usr/pkg/include/libxml2            -Wimplicit-function-declaration 
-Wold-style-definition -Wdeclaration-after-statement -Wno-pointer-sign -O2 
In file included from sysdep.c:100:
/usr/include/term.h:1452: error: redefinition of 'struct terminal'
*** Error code 1

Home | Main Index | Thread Index | Old Index