Changeset cefb126 in mainline for tools/checkers/vcc.h
- Timestamp:
- 2010-07-02T14:19:30Z (15 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 89c57b6
- Parents:
- fe7abd0 (diff), e3ee9b9 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
tools/checkers/vcc.h
rfe7abd0 rcefb126 1 1 /* 2 * Copyright (c) 20 06 Josef Cejka2 * Copyright (c) 2010 Martin Decky 3 3 * All rights reserved. 4 4 * … … 27 27 */ 28 28 29 /** @addtogroup libcamd6430 * @{31 */32 29 /** @file 30 * 31 * VCC specifications tight to the HelenOS-specific annotations. 32 * 33 33 */ 34 34 35 #ifndef LIBC_amd64_LIMITS_H_36 #define LIBC_amd64_LIMITS_H_35 #ifndef HELENOS_VCC_H_ 36 #define HELENOS_VCC_H_ 37 37 38 #define LONG_MIN MIN_INT64 39 #define LONG_MAX MAX_INT64 40 #define ULONG_MIN MIN_UINT64 41 #define ULONG_MAX MAX_UINT64 38 typedef _Bool bool; 42 39 43 #define SIZE_MIN MIN_UINT64 44 #define SIZE_MAX MAX_UINT64 45 #define SSIZE_MIN MIN_INT64 46 #define SSIZE_MAX MAX_INT64 40 #define __concat_identifiers_str(a, b) a ## b 41 #define __concat_identifiers(a, b) __concat_identifiers_str(a, b) 42 43 #define __specification_attr(key, value) \ 44 __declspec(System.Diagnostics.Contracts.CodeContract.StringVccAttr, \ 45 key, value) 46 47 #define __specification_type(name) \ 48 __specification( \ 49 typedef struct __concat_identifiers(_vcc_math_type_, name) { \ 50 char _vcc_marker_for_math_type; \ 51 } __concat_identifiers(\, name); \ 52 ) 53 54 __specification(typedef void * \object;) 55 __specification(typedef __int64 \integer;) 56 __specification(typedef unsigned __int64 \size_t;) 57 58 __specification_type(objset) 59 60 __specification(struct \TypeState { 61 __specification(ghost \integer \claim_count;) 62 __specification(ghost bool \consistent;) 63 __specification(ghost \objset \owns;) 64 __specification(ghost \object \owner;) 65 __specification(ghost bool \valid;) 66 };) 67 68 __specification(bool \extent_mutable(\object);) 69 __specification(\objset \extent(\object);) 70 __specification(\objset \array_range(\object, \size_t);) 71 __specification(bool \mutable_array(\object, \size_t);) 47 72 48 73 #endif
Note:
See TracChangeset
for help on using the changeset viewer.