Subject: kern/2039: kern/tty_tb.c fails to build
To: None <gnats-bugs@NetBSD.ORG>
From: Gary D. Duzan <gary@wheel.tiac.net>
List: netbsd-bugs
Date: 02/06/1996 11:10:48
>Number:         2039
>Category:       kern
>Synopsis:       kern/tty_tb.c fails to build
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people (Kernel Bug People)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Feb  6 11:35:00 1996
>Last-Modified:
>Originator:     Gary D. Duzan
>Organization:
	Northeastern University
>Release:        February 5, 1996
>Environment:
	
System: NetBSD wheel.tiac.net 1.1A NetBSD 1.1A (WHEEL) #0: Mon Jan 22 23:18:59 EST 1996 gary@wheel.tiac.net:/root/src/sys/arch/i386/compile/WHEEL i386


>Description:

cc -g -O2 -Werror -I. -I../../../../arch -I../../../.. -DI486_CPU -DDUMMY_NOPS -DXSERVER -DUCONSOLE -DINSECURE -DMACHINE_NONCONTIG -DTIMEZONE="0" -DDST="0" -DSWAPPAGER -DVNODEPAGER -DDEVPAGER -DKTRACE -DSYSVMSG -DSYSVSEM -DSYSVSHM -DCOMPAT_NOMID -DCOMPAT_09 -DCOMPAT_10 -DCOMPAT_43 -DTCP_COMPAT_42 -DCOMPAT_IBCS2 -DCOMPAT_LINUX -DUSER_LDT -DFFS -DLFS -DMFS -DMSDOSFS -DFIFO -DKERNFS -DNULLFS -DPROCFS -DUNION -DINET -D_KERNEL -Di386  -c ../../../../kern/tty_tb.c
../../../../kern/tty_tb.c:52: `tbpos' defined as wrong kind of tag
../../../../kern/tty_tb.c:53: field `hitpos' has incomplete type
../../../../kern/tty_tb.c:85: sizeof applied to an incomplete type
../../../../kern/tty_tb.c:86: sizeof applied to an incomplete type
../../../../kern/tty_tb.c:90: sizeof applied to an incomplete type
../../../../kern/tty_tb.c:92: sizeof applied to an incomplete type
../../../../kern/tty_tb.c:94: sizeof applied to an incomplete type
../../../../kern/tty_tb.c:95: sizeof applied to an incomplete type
../../../../kern/tty_tb.c: In function `tbolddecode':
../../../../kern/tty_tb.c:248: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:251: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:252: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:253: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:254: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:255: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:256: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:257: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:258: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c: In function `tblresdecode':
../../../../kern/tty_tb.c:273: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:274: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:275: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:276: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:277: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:278: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:279: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:280: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c: In function `tbhresdecode':
../../../../kern/tty_tb.c:296: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:297: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:298: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:299: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:300: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:301: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:302: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:303: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:304: dereferencing pointer to incomplete type
../../../../kern/tty_tb.c:305: dereferencing pointer to incomplete type
*** Error code 1

Stop.

   This with the following kernel config:


#	$NetBSD: GENERIC,v 1.23.2.1 1995/10/17 12:54:55 tls Exp $
#
#	GENERIC -- everything that's currently supported
#

machine		i386		# architecture, used by config; REQUIRED

#options		I386_CPU	# CPU classes; at least one is REQUIRED
options		I486_CPU
#options		I586_CPU
#options		MATH_EMULATE	# floating point emulation

options		DUMMY_NOPS	# speed hack; recommended
options		XSERVER,UCONSOLE
options		INSECURE	# insecure; allow /dev/mem writing for X
options		MACHINE_NONCONTIG

maxusers	12		# estimated number of users
options		TIMEZONE=0	# time zone to adjust RTC time by
options		DST=0		# daylight savings time used by RTC

options		SWAPPAGER	# paging; REQUIRED
options		VNODEPAGER	# mmap() of files
options		DEVPAGER	# mmap() of devices

#options		DDB		# in-kernel debugger
makeoptions	DEBUG="-g"	# compile full symbol table
#options		DIAGNOSTIC	# internally consistency checks
options		KTRACE		# system call tracing, a la ktrace(1)

options		SYSVMSG		# System V-like message queues
options		SYSVSEM		# System V-like semaphores
options		SYSVSHM		# System V-like memory sharing
#options	SHMMAXPGS=1024	# 1024 pages is the default

options		COMPAT_NOMID	# compatibility with 386BSD, BSDI, NetBSD 0.8,
options		COMPAT_09	# NetBSD 0.9,
options		COMPAT_10	# NetBSD 1.0,
options		COMPAT_43	# and 4.3BSD
options		TCP_COMPAT_42	# TCP bug compatibility with 4.2BSD

#options		COMPAT_SVR4	# binary compatibility with SVR4
options		COMPAT_IBCS2	# binary compatibility with SCO and ISC
options		COMPAT_LINUX	# binary compatibility with Linux
#options		COMPAT_FREEBSD	# binary compatibility with FreeBSD

options		USER_LDT	# user-settable LDT; used by WINE
#options		LKM		# loadable kernel modules

options		FFS		# UFS
#options		QUOTA		# UFS quotas
options		LFS		# log-structured file system
options		MFS		# memory file system

#options		NFSCLIENT	# Network File System client
#options		NFSSERVER	# Network File System server

#options		CD9660		# ISO 9660 + Rock Ridge file system
options		MSDOSFS		# MS-DOS file system
#options		FDESC		# /dev/fd
options		FIFO		# FIFOs; RECOMMENDED
options		KERNFS		# /kern
options		NULLFS		# loopback file system
#options		PORTAL		# ?
options		PROCFS		# /proc
#options		UMAPFS		# NULLFS + uid and gid remapping
options		UNION		# union file system

#options	GATEWAY		# packet forwarding
options		INET		# IP + ICMP + TCP + UDP
#options		NS		# XNS
#options		ISO,TPIP	# OSI
#options		EON		# OSI tunneling over IP
#options		CCITT,LLC,HDLC	# X.25

config		netbsd root on sd0 swap on sd0 and sd1 and vnd0 and vnd1
#options		GENERIC

isa0	at root
#pci0	at root

npx0	at isa? port 0xf0 irq 13	# math coprocessor

#pc0	at isa? port 0x60 irq 1		# generic PC console device
vt0	at isa? port 0x60 irq 1

com0	at isa? port 0x3f8 irq 4	# standard PC serial ports
com1	at isa? port 0x2f8 irq 3
com2	at isa? port 0x3e8 irq 5
#com3	at isa? port 0x2e8 irq 9
#ast0	at isa? port 0x1a0 irq 5	# AST 4-port serial cards
#com*	at ast? slave ? flags 1
#boca0	at isa? port 0x100 irq 5	# BOCA 8-port serial cards
#com*	at boca? slave ?
#rtfps0	at isa? port 0x1230 irq 10	# RT 4-port serial cards
#com*	at rtfps? slave ?

#cy0	at isa? ...

lpt0	at isa? port 0x378 # irq 7	# standard PC parallel ports
#lpt1	at isa? port 0x278
#lpt2	at isa? port 0x3bc

#lms0	at isa? port 0x23c irq 5	# Logitech bus mouse
#lms1	at isa? port 0x238 irq 5
#mms0	at isa? port 0x23c irq 5	# Microsoft InPort mouse
#mms1	at isa? port 0x238 irq 5
pms0	at isa? port 0x60 irq 12	# PS/2 auxiliary port mouse

#aha0	at isa? port 0x330 irq ? drq ?	# Adaptec 154[02] SCSI controllers
#aha1	at isa? port 0x334 irq ? drq ?	# Adaptec 154[02] SCSI controllers
#scsibus* at aha?
ahb0	at isa? port ? irq ?		# Adaptec 174[024] SCSI controllers
scsibus* at ahb?
#ahc*	at pci? bus ? dev ?		# Adaptec 2940 SCSI controllers
#scsibus* at ahc?
#aic0	at isa? port 0x340 irq 12	# Adaptec 152[02] SCSI controllers
#scsibus* at aic?
#bt0	at isa? port 0x330 irq ? drq ?	# BusLogic [57]4X SCSI controllers
#bt1	at isa? port 0x334 irq ? drq ?	# BusLogic [57]4X SCSI controllers
#bt2	at isa? port ? irq ?
#scsibus* at bt?
#ncr*	at pci? bus ? dev ?		# NCR 538XX SCSI controllers
#scsibus* at ncr?
#sea0	at isa? iomem 0xc8000 irq 5
#scsibus* at sea?
#uha0	at isa? port 0x330 irq ? drq ?	# UltraStor [13]4f SCSI controllers
#uha1	at isa? port 0x334 irq ? drq ?	# UltraStor [13]4f SCSI controllers
#uha2	at isa? port ? irq ?		# UltraStor 24f SCSI controllers
#scsibus* at uha?

sd*	at scsibus? target ? lun ?	# SCSI disk drives
#st*	at scsibus? target ? lun ?	# SCSI tape drives
#cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
#ch*	at scsibus? target ? lun ?	# SCSI autochangers

fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
#fdc1	at isa? port 0x370 irq ? drq ?
fd*	at fdc? drive ?

#mcd0	at isa? port 0x300 irq 10	# Mitsumi CD-ROM drives

#wdc0	at isa? port 0x1f0 irq 14	# ST506, ESDI, and IDE controllers
#wdc1	at isa? port 0x170 irq ?
#wd*	at wdc? drive ?

#wt0	at isa? port 0x300 irq 5 drq 1	# Archive and Wangtek QIC tape drives

#ed0	at isa? port 0x280 iomem 0xd0000 irq 9	# WD/SMC, 3C503, and NE[12]000
#ed1	at isa? port 0x250 iomem 0xd8000 irq 9	#   ethernet cards
#ed2	at isa? port 0x300 iomem 0xcc000 irq 10
#eg0	at isa? ...				# 3C505 ethernet cards
#el0	at isa? port 0x300 irq 9		# 3C501 ethernet cards
#ep0	at isa? port ? irq ?			# 3C509 ethernet cards
#ie0	at isa? port 0x360 iomem 0xd0000 irq 7	# StarLAN, 3C507, and Etherexpress
#le0	at isa? port 0x320 irq 10 drq 7		# IsoLan, NE2100, and DEPCA
#le*	at pci? bus ? dev ?
#de*	at pci? bus ? dev ?

#pss0	at isa? port 0x220 irq 7 drq 6  # Personal Sound System
#sp0	at pss0 port 0x530 irq 10 drq 0	# 	sound port driver

#sb0	at isa? port 0x220 irq 7 drq 1	# SoundBlaster
#wss0	at isa? port 0x530 irq 10 drq 0	# Windows Sound System
#pas0	at isa? port 0x220 irq 7 drq 1	# ProAudio Spectrum
#gus0	at isa? port 0x220 irq 7 drq 1 flags 6 # Gravis Ultra Sound (flags is record drq for full-duplex)
#spkr0	at isa? ...

pseudo-device	loop	1		# network loopback
#pseudo-device	bpfilter 8		# packet filter
#pseudo-device	sl	2		# CSLIP
pseudo-device	ppp	1		# PPP
#pseudo-device	tun	2		# network tunneling over tty

pseudo-device	pty	64		# pseudo-terminals
pseudo-device	tb	1		# tablet line discipline
pseudo-device	vnd	4		# paging to files

>How-To-Repeat:

	cd src/sys/arch/i386/conf
	config WHEEL
	cd ../compile/WHEEL
	make depend
	make

>Fix:
	tbpos seems to be a union in one place and a struct elsewhere.
	Change one or both?
>Audit-Trail:
>Unformatted: