Change bit fields' type from uint32_t to unsigned int (because uint32_t is defined as something other than unsigned int in arm-none-eabi stdint.h; using that type for bit-fields is GCC extension).
This commit is contained in:
@@ -101,12 +101,12 @@ typedef enum {
|
|||||||
*/
|
*/
|
||||||
typedef struct {
|
typedef struct {
|
||||||
/** Value type (ecma_Type_t) */
|
/** Value type (ecma_Type_t) */
|
||||||
uint32_t m_ValueType : 2;
|
unsigned int m_ValueType : 2;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Simple value (ecma_SimpleValue_t) or compressed pointer to value (depending on m_ValueType)
|
* Simple value (ecma_SimpleValue_t) or compressed pointer to value (depending on m_ValueType)
|
||||||
*/
|
*/
|
||||||
uint32_t m_Value : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_Value : ECMA_POINTER_FIELD_WIDTH;
|
||||||
} __packed ecma_Value_t;
|
} __packed ecma_Value_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -116,13 +116,13 @@ typedef struct {
|
|||||||
*/
|
*/
|
||||||
typedef struct {
|
typedef struct {
|
||||||
/** Type (ecma_CompletionType_t) */
|
/** Type (ecma_CompletionType_t) */
|
||||||
uint32_t completion_type : 3;
|
unsigned int completion_type : 3;
|
||||||
|
|
||||||
/** Value */
|
/** Value */
|
||||||
ecma_Value_t completion_value;
|
ecma_Value_t completion_value;
|
||||||
|
|
||||||
/** Target */
|
/** Target */
|
||||||
uint32_t target : 8;
|
unsigned int target : 8;
|
||||||
} __packed ecma_CompletionValue_t;
|
} __packed ecma_CompletionValue_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -152,10 +152,10 @@ typedef enum {
|
|||||||
*/
|
*/
|
||||||
typedef struct ecma_Property_t {
|
typedef struct ecma_Property_t {
|
||||||
/** Property's type (ecma_PropertyType_t) */
|
/** Property's type (ecma_PropertyType_t) */
|
||||||
uint32_t m_Type : 2;
|
unsigned int m_Type : 2;
|
||||||
|
|
||||||
/** Compressed pointer to next property */
|
/** Compressed pointer to next property */
|
||||||
uint32_t m_pNextProperty : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_pNextProperty : ECMA_POINTER_FIELD_WIDTH;
|
||||||
|
|
||||||
/** Property's details (depending on m_Type) */
|
/** Property's details (depending on m_Type) */
|
||||||
union {
|
union {
|
||||||
@@ -163,16 +163,16 @@ typedef struct ecma_Property_t {
|
|||||||
/** Description of named data property */
|
/** Description of named data property */
|
||||||
struct __packed ecma_NamedDataProperty_t {
|
struct __packed ecma_NamedDataProperty_t {
|
||||||
/** Compressed pointer to property's name (pointer to String) */
|
/** Compressed pointer to property's name (pointer to String) */
|
||||||
uint32_t m_pName : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_pName : ECMA_POINTER_FIELD_WIDTH;
|
||||||
|
|
||||||
/** Attribute 'Writable' */
|
/** Attribute 'Writable' */
|
||||||
uint32_t m_Writable : 1;
|
unsigned int m_Writable : 1;
|
||||||
|
|
||||||
/** Attribute 'Enumerable' */
|
/** Attribute 'Enumerable' */
|
||||||
uint32_t m_Enumerable : 1;
|
unsigned int m_Enumerable : 1;
|
||||||
|
|
||||||
/** Attribute 'Configurable' */
|
/** Attribute 'Configurable' */
|
||||||
uint32_t m_Configurable : 1;
|
unsigned int m_Configurable : 1;
|
||||||
|
|
||||||
/** Value */
|
/** Value */
|
||||||
ecma_Value_t m_Value;
|
ecma_Value_t m_Value;
|
||||||
@@ -181,28 +181,28 @@ typedef struct ecma_Property_t {
|
|||||||
/** Description of named accessor property */
|
/** Description of named accessor property */
|
||||||
struct __packed ecma_NamedAccessorProperty_t {
|
struct __packed ecma_NamedAccessorProperty_t {
|
||||||
/** Compressed pointer to property's name (pointer to String) */
|
/** Compressed pointer to property's name (pointer to String) */
|
||||||
uint32_t m_pName : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_pName : ECMA_POINTER_FIELD_WIDTH;
|
||||||
|
|
||||||
/** Attribute 'Enumerable' */
|
/** Attribute 'Enumerable' */
|
||||||
uint32_t m_Enumerable : 1;
|
unsigned int m_Enumerable : 1;
|
||||||
|
|
||||||
/** Attribute 'Configurable' */
|
/** Attribute 'Configurable' */
|
||||||
uint32_t m_Configurable : 1;
|
unsigned int m_Configurable : 1;
|
||||||
|
|
||||||
/** Compressed pointer to property's getter */
|
/** Compressed pointer to property's getter */
|
||||||
uint32_t m_pGet : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_pGet : ECMA_POINTER_FIELD_WIDTH;
|
||||||
|
|
||||||
/** Compressed pointer to property's setter */
|
/** Compressed pointer to property's setter */
|
||||||
uint32_t m_pSet : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_pSet : ECMA_POINTER_FIELD_WIDTH;
|
||||||
} m_NamedAccessorProperty;
|
} m_NamedAccessorProperty;
|
||||||
|
|
||||||
/** Description of internal property */
|
/** Description of internal property */
|
||||||
struct __packed ecma_InternalProperty_t {
|
struct __packed ecma_InternalProperty_t {
|
||||||
/** Internal property's type */
|
/** Internal property's type */
|
||||||
uint32_t m_InternalPropertyType : 4;
|
unsigned int m_InternalPropertyType : 4;
|
||||||
|
|
||||||
/** Value (may be a compressed pointer) */
|
/** Value (may be a compressed pointer) */
|
||||||
uint32_t m_Value : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_Value : ECMA_POINTER_FIELD_WIDTH;
|
||||||
} m_InternalProperty;
|
} m_InternalProperty;
|
||||||
} u;
|
} u;
|
||||||
} ecma_Property_t;
|
} ecma_Property_t;
|
||||||
@@ -215,7 +215,7 @@ typedef struct {
|
|||||||
* Flag that indicates if the object is valid for normal usage.
|
* Flag that indicates if the object is valid for normal usage.
|
||||||
* If the flag is zero, then the object is not valid and is queued for GC.
|
* If the flag is zero, then the object is not valid and is queued for GC.
|
||||||
*/
|
*/
|
||||||
uint32_t m_IsObjectValid : 1;
|
unsigned int m_IsObjectValid : 1;
|
||||||
|
|
||||||
/** Details (depending on m_IsObjectValid) */
|
/** Details (depending on m_IsObjectValid) */
|
||||||
union {
|
union {
|
||||||
@@ -227,10 +227,10 @@ typedef struct {
|
|||||||
* which is limited by size of address space allocated for JerryScript
|
* which is limited by size of address space allocated for JerryScript
|
||||||
* (and, consequently, by ECMA_POINTER_FIELD_WIDTH).
|
* (and, consequently, by ECMA_POINTER_FIELD_WIDTH).
|
||||||
*/
|
*/
|
||||||
uint32_t m_Refs : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_Refs : ECMA_POINTER_FIELD_WIDTH;
|
||||||
|
|
||||||
/** Compressed pointer to next object in the list of objects, queued for GC (if !m_IsObjectValid) */
|
/** Compressed pointer to next object in the list of objects, queued for GC (if !m_IsObjectValid) */
|
||||||
uint32_t m_NextQueuedForGC : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_NextQueuedForGC : ECMA_POINTER_FIELD_WIDTH;
|
||||||
} __packed u;
|
} __packed u;
|
||||||
} ecma_GCInfo_t;
|
} ecma_GCInfo_t;
|
||||||
|
|
||||||
@@ -248,11 +248,11 @@ typedef enum {
|
|||||||
*/
|
*/
|
||||||
typedef struct ecma_Object_t {
|
typedef struct ecma_Object_t {
|
||||||
/** Compressed pointer to property list */
|
/** Compressed pointer to property list */
|
||||||
uint32_t m_pProperties : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_pProperties : ECMA_POINTER_FIELD_WIDTH;
|
||||||
|
|
||||||
/** Flag indicating whether it is a general object (false)
|
/** Flag indicating whether it is a general object (false)
|
||||||
or a lexical environment (true) */
|
or a lexical environment (true) */
|
||||||
uint32_t m_IsLexicalEnvironment : 1;
|
unsigned int m_IsLexicalEnvironment : 1;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Attributes of either general object or lexical environment
|
* Attributes of either general object or lexical environment
|
||||||
@@ -264,10 +264,10 @@ typedef struct ecma_Object_t {
|
|||||||
*/
|
*/
|
||||||
struct {
|
struct {
|
||||||
/** Attribute 'Extensible' */
|
/** Attribute 'Extensible' */
|
||||||
uint32_t m_Extensible : 1;
|
unsigned int m_Extensible : 1;
|
||||||
|
|
||||||
/** Compressed pointer to prototype object (ecma_Object_t) */
|
/** Compressed pointer to prototype object (ecma_Object_t) */
|
||||||
uint32_t m_pPrototypeObject : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_pPrototypeObject : ECMA_POINTER_FIELD_WIDTH;
|
||||||
} __packed m_Object;
|
} __packed m_Object;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -277,10 +277,10 @@ typedef struct ecma_Object_t {
|
|||||||
/**
|
/**
|
||||||
* Type of lexical environment (ecma_LexicalEnvironmentType_t).
|
* Type of lexical environment (ecma_LexicalEnvironmentType_t).
|
||||||
*/
|
*/
|
||||||
uint32_t m_Type : 1;
|
unsigned int m_Type : 1;
|
||||||
|
|
||||||
/** Compressed pointer to outer lexical environment */
|
/** Compressed pointer to outer lexical environment */
|
||||||
uint32_t m_pOuterReference : ECMA_POINTER_FIELD_WIDTH;
|
unsigned int m_pOuterReference : ECMA_POINTER_FIELD_WIDTH;
|
||||||
} __packed m_LexicalEnvironment;
|
} __packed m_LexicalEnvironment;
|
||||||
|
|
||||||
} __packed u_Attributes;
|
} __packed u_Attributes;
|
||||||
|
|||||||
@@ -35,12 +35,12 @@ typedef struct {
|
|||||||
* Note:
|
* Note:
|
||||||
* m_PropertyName is valid only if m_IsPropertyReference is true.
|
* m_PropertyName is valid only if m_IsPropertyReference is true.
|
||||||
*/
|
*/
|
||||||
uint32_t m_IsPropertyReference : 1;
|
unsigned int m_IsPropertyReference : 1;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Flag indicating that this reference is strict (see also: ECMA-262 v5, 8.7).
|
* Flag indicating that this reference is strict (see also: ECMA-262 v5, 8.7).
|
||||||
*/
|
*/
|
||||||
uint32_t m_StrictReference : 1;
|
unsigned int m_StrictReference : 1;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Name of variable (Null-terminated string).
|
* Name of variable (Null-terminated string).
|
||||||
|
|||||||
Reference in New Issue
Block a user