projects
/
cparser
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Create AST for select expressions even if the LHS has incomplete type.
[cparser]
/
type.h
diff --git
a/type.h
b/type.h
index
1e6f13b
..
92baa7d
100644
(file)
--- a/
type.h
+++ b/
type.h
@@
-25,6
+25,10
@@
#include "ast.h"
#include "symbol.h"
#include "ast.h"
#include "symbol.h"
+/** Type used to express sizes. */
+typedef unsigned long il_size_t;
+typedef unsigned char il_alignment_t;
+
/* note that the constant values represent the rank of the types as defined
* in § 6.3.1 */
typedef enum atomic_type_kind_t {
/* note that the constant values represent the rank of the types as defined
* in § 6.3.1 */
typedef enum atomic_type_kind_t {
@@
-132,6
+136,11
@@
bool is_type_signed(const type_t *type);
*/
bool is_type_float(const type_t *type);
*/
bool is_type_float(const type_t *type);
+/**
+ * returns true if type contains complex numbers
+ */
+bool is_type_complex(const type_t *type);
+
bool is_type_real(const type_t *type);
/**
bool is_type_real(const type_t *type);
/**
@@
-157,6
+166,7
@@
bool is_type_object(const type_t *type);
bool types_compatible(const type_t *type1, const type_t *type2);
type_t *get_unqualified_type(type_t *type);
bool types_compatible(const type_t *type1, const type_t *type2);
type_t *get_unqualified_type(type_t *type);
+type_t *get_qualified_type(type_t*, type_qualifiers_t);
type_t *skip_typeref(type_t *type);
/**
type_t *skip_typeref(type_t *type);
/**