Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Jun 1998 15:56:13 -0400 (EDT)
From:      zhihuizhang <bf20761@binghamton.edu>
To:        hackers <freebsd-hackers@FreeBSD.ORG>
Subject:   linker set defintion (ls_item)
Message-ID:  <Pine.SOL.L3.93.980613155010.26627A-100000@bingsun1>

next in thread | raw e-mail | index | archive | help

I am reading freeBSD source code concerning the linker set which I believe
is a set of *addresses* of similar symbols.  The linker set structure is
defined in kernel.h as: 

	struct linker_set {
		int	ls_length;
		const void * ls_item[1];
	}

The value of ls_item should be the address of an array of pointers.  Since
the size of this array is not fixed, I wonder why it is not defined as: 

	struct linker_set [
		int	ls_length;
		const void ** ls_item;
	}

This may have something to do with the C compiler.  I hope some C expert
can give me a hint.  Thanks in advance.

-------------------------------------------------

Zhihui Zhang

Department of Computer Science
State University of New York at Binghamton

Web Site: http://cs.binghamton.edu/~zzhang

-------------------------------------------------


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SOL.L3.93.980613155010.26627A-100000>