Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Aug 1999 20:39:53 -0400 (EDT)
From:      Thomas David Rivers <rivers@dignus.com>
To:        freebsd-questions@FreeBSD.ORG, tim@desert.net
Subject:   Re: ctype.h: #define _T 0x00100000L: how should it work?
Message-ID:  <199908230039.UAA23753@lakes.dignus.com>
In-Reply-To: <19990822162657.A14046@desert.net>

next in thread | previous in thread | raw e-mail | index | archive | help
> 
> 1)  Who is right?  Is it proper for omniORB to be using _T in their
>     code?  Or is it right for FreeBSD to have _T defined in ctype.h?
>     Or both, somehow?

 <ctype.h> is part of the ANSI C standard.  The standard says that names
 which begin with either two underscores, or one underscore followed
 by a capital letter belong to the implementation.   So, by the
 standard, the implementation is free to use those names in the
 implementation of <ctype.h>.

 Technically, omniORB is incorrect; they should not use names which
 "belong" to the implementation.

> 2)  What, in the short term, is the best way to fix the problem?  I
>     could add #ifdef SOME_IDENTIFIER ... #endif around that block of
>     #defines in ctype.h.  I could add #undefs to the omniORB2 source
>     code.  What have other people done for this type of thing?
> 3)  What is the best long-term solution?

 I believe the best long-term solution would be reparation of omniORB.

	- Dave Rivers -






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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199908230039.UAA23753>