Unify Framework Lib
1.6.0
cc.h
Go to the documentation of this file.
1
11
/*
12
* Copyright (c) 2003, Adam Dunkels.
13
* All rights reserved.
14
*
15
* Redistribution and use in source and binary forms, with or without
16
* modification, are permitted provided that the following conditions
17
* are met:
18
* 1. Redistributions of source code must retain the above copyright
19
* notice, this list of conditions and the following disclaimer.
20
* 2. Redistributions in binary form must reproduce the above
21
* copyright notice, this list of conditions and the following
22
* disclaimer in the documentation and/or other materials provided
23
* with the distribution.
24
* 3. The name of the author may not be used to endorse or promote
25
* products derived from this software without specific prior
26
* written permission.
27
*
28
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
29
* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
30
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
31
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
32
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
33
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
34
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
35
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
36
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
37
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
38
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
39
*
40
* This file is part of the Contiki desktop OS
41
*
42
* $Id: cc.h,v 1.6 2008/07/02 08:35:29 adamdunkels Exp $
43
*
44
*/
45
#ifndef __CC_H__
46
#define __CC_H__
47
48
#include "contiki-conf.h"
49
54
#if CC_CONF_REENTRANT_ARGS
55
#define CC_REENTRANT_ARG reentrant
56
#else
/* CC_CONF_REGISTER_ARGS */
57
#define CC_REENTRANT_ARG
58
#endif
/* CC_CONF_REGISTER_ARGS */
59
60
61
#if CC_CONF_ALIGN_PACK
62
#define CC_ALIGN_PACK __attribute__((__packed__))
63
#else
/* CC_CONF_REGISTER_ARGS */
64
#define CC_ALIGN_PACK
65
#endif
/* CC_CONF_REGISTER_ARGS */
66
67
72
#if CC_CONF_REGISTER_ARGS
73
#define CC_REGISTER_ARG register
74
#else
/* CC_CONF_REGISTER_ARGS */
75
#define CC_REGISTER_ARG
76
#endif
/* CC_CONF_REGISTER_ARGS */
77
82
#if CC_CONF_FUNCTION_POINTER_ARGS
83
#define CC_FUNCTION_POINTER_ARGS 1
84
#else
/* CC_CONF_FUNCTION_POINTER_ARGS */
85
#define CC_FUNCTION_POINTER_ARGS 0
86
#endif
/* CC_CONF_FUNCTION_POINTER_ARGS */
87
92
#ifdef CC_CONF_FASTCALL
93
#define CC_FASTCALL CC_CONF_FASTCALL
94
#else
/* CC_CONF_FASTCALL */
95
#define CC_FASTCALL
96
#endif
/* CC_CONF_FASTCALL */
97
101
#ifdef CC_CONF_CONST_FUNCTION_BUG
102
#define CC_CONST_FUNCTION
103
#else
/* CC_CONF_FASTCALL */
104
#define CC_CONST_FUNCTION const
105
#endif
/* CC_CONF_FASTCALL */
106
110
#if CC_CONF_UNSIGNED_CHAR_BUGS
111
#define CC_UNSIGNED_CHAR_BUGS 1
112
#else
/* CC_CONF_UNSIGNED_CHAR_BUGS */
113
#define CC_UNSIGNED_CHAR_BUGS 0
114
#endif
/* CC_CONF_UNSIGNED_CHAR_BUGS */
115
119
#if CC_CONF_DOUBLE_HASH
120
#define CC_DOUBLE_HASH 1
121
#else
/* CC_CONF_DOUBLE_HASH */
122
#define CC_DOUBLE_HASH 0
123
#endif
/* CC_CONF_DOUBLE_HASH */
124
125
#ifdef CC_CONF_INLINE
126
#define CC_INLINE CC_CONF_INLINE
127
#else
/* CC_CONF_INLINE */
128
#define CC_INLINE
129
#endif
/* CC_CONF_INLINE */
130
134
#ifdef CC_CONF_ASSIGN_AGGREGATE
135
#define CC_ASSIGN_AGGREGATE(dest, src) CC_CONF_ASSIGN_AGGREGATE(dest, src)
136
#else
/* CC_CONF_ASSIGN_AGGREGATE */
137
#define CC_ASSIGN_AGGREGATE(dest, src) *dest = *src
138
#endif
/* CC_CONF_ASSIGN_AGGREGATE */
139
140
#if CC_CONF_NO_VA_ARGS
141
#define CC_NO_VA_ARGS CC_CONF_NO_VA_ARGS
142
#else
143
#define CC_NO_VA_ARGS 0
144
#endif
145
146
#ifndef NULL
147
#define NULL 0
148
#endif
/* NULL */
149
150
#define CC_CONCAT2(s1, s2) s1##s2
158
#define CC_CONCAT(s1, s2) CC_CONCAT2(s1, s2)
159
160
#endif
/* __CC_H__ */
components
uic_contiki
core
sys
cc.h
Generated on Wed Aug 7 2024 15:21:42 for Unify Framework Lib by
1.9.4