Annotation of sbbs/javascript/include/mozilla/js/jsstddef.h, revision 1.1

1.1     ! root        1: /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
        !             2:  *
        !             3:  * The contents of this file are subject to the Netscape Public
        !             4:  * License Version 1.1 (the "License"); you may not use this file
        !             5:  * except in compliance with the License. You may obtain a copy of
        !             6:  * the License at http://www.mozilla.org/NPL/
        !             7:  *
        !             8:  * Software distributed under the License is distributed on an "AS
        !             9:  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
        !            10:  * implied. See the License for the specific language governing
        !            11:  * rights and limitations under the License.
        !            12:  *
        !            13:  * The Original Code is Mozilla Communicator client code, released
        !            14:  * March 31, 1998.
        !            15:  *
        !            16:  * The Initial Developer of the Original Code is Netscape Communications
        !            17:  * Corporation.  Portions created by Netscape are
        !            18:  * Copyright (C) 1998 Netscape Communications Corporation. All
        !            19:  * Rights Reserved.
        !            20:  *
        !            21:  * Contributor(s): 
        !            22:  *
        !            23:  * Alternatively, the contents of this file may be used under the
        !            24:  * terms of the GNU Public License (the "GPL"), in which case the
        !            25:  * provisions of the GPL are applicable instead of those above.
        !            26:  * If you wish to allow use of your version of this file only
        !            27:  * under the terms of the GPL and not to allow others to use your
        !            28:  * version of this file under the NPL, indicate your decision by
        !            29:  * deleting the provisions above and replace them with the notice
        !            30:  * and other provisions required by the GPL.  If you do not delete
        !            31:  * the provisions above, a recipient may use your version of this
        !            32:  * file under either the NPL or the GPL.
        !            33:  */
        !            34: 
        !            35: /*
        !            36:  * stddef inclusion here to first declare ptrdif as a signed long instead of a
        !            37:  * signed int.
        !            38:  */
        !            39: 
        !            40: #ifdef _WINDOWS
        !            41: # ifndef XP_WIN
        !            42: # define XP_WIN
        !            43: # endif
        !            44: #if defined(_WIN32) || defined(WIN32)
        !            45: # ifndef XP_WIN32
        !            46: # define XP_WIN32
        !            47: # endif
        !            48: #else
        !            49: # ifndef XP_WIN16
        !            50: # define XP_WIN16
        !            51: # endif
        !            52: #endif
        !            53: #endif
        !            54: 
        !            55: #ifdef XP_WIN16
        !            56: #ifndef _PTRDIFF_T_DEFINED
        !            57: typedef long ptrdiff_t;
        !            58: 
        !            59: /*
        !            60:  * The Win16 compiler treats pointer differences as 16-bit signed values.
        !            61:  * This macro allows us to treat them as 17-bit signed values, stored in
        !            62:  * a 32-bit type.
        !            63:  */
        !            64: #define PTRDIFF(p1, p2, type)                                 \
        !            65:     ((((unsigned long)(p1)) - ((unsigned long)(p2))) / sizeof(type))
        !            66: 
        !            67: #define _PTRDIFF_T_DEFINED
        !            68: #endif /*_PTRDIFF_T_DEFINED*/
        !            69: #else /*WIN16*/
        !            70: 
        !            71: #define PTRDIFF(p1, p2, type)                                 \
        !            72:        ((p1) - (p2))
        !            73: 
        !            74: #endif
        !            75: 
        !            76: #include <stddef.h>
        !            77: 
        !            78: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.