Skip to content

Commit e564c59

Browse files
committed
CHANGE: using ! at the end of struct value type specification
1 parent 0248e85 commit e564c59

File tree

1 file changed

+23
-21
lines changed

1 file changed

+23
-21
lines changed

src/core/t-struct.c

+23-21
Original file line numberDiff line numberDiff line change
@@ -38,23 +38,23 @@
3838
REBFLG MT_Struct(REBVAL *out, REBVAL *data, REBCNT type);
3939

4040
static const REBINT type_to_sym [STRUCT_TYPE_MAX] = {
41-
SYM_UINT8,
42-
SYM_INT8,
43-
SYM_UINT16,
44-
SYM_INT16,
45-
SYM_UINT32,
46-
SYM_INT32,
47-
SYM_UINT64,
48-
SYM_INT64,
41+
SYM_UINT8X,
42+
SYM_INT8X,
43+
SYM_UINT16X,
44+
SYM_INT16X,
45+
SYM_UINT32X,
46+
SYM_INT32X,
47+
SYM_UINT64X,
48+
SYM_INT64X,
4949
-1, //SYM_INTEGER,
5050

51-
SYM_FLOAT,
52-
SYM_DOUBLE,
51+
SYM_FLOATX,
52+
SYM_DOUBLEX,
5353
-1, //SYM_DECIMAL,
5454

5555
SYM_POINTER,
5656
-1, //SYM_STRUCT
57-
SYM_REBVAL
57+
//SYM_REBVAL // unused
5858
//STRUCT_TYPE_MAX
5959
};
6060

@@ -516,43 +516,43 @@ static REBOOL parse_field_type(struct Struct_Field *field, REBVAL *spec, REBVAL
516516

517517
if (IS_WORD(val)){
518518
switch (VAL_WORD_CANON(val)) {
519-
case SYM_UINT8:
519+
case SYM_UINT8X:
520520
field->type = STRUCT_TYPE_UINT8;
521521
field->size = 1;
522522
break;
523-
case SYM_INT8:
523+
case SYM_INT8X:
524524
field->type = STRUCT_TYPE_INT8;
525525
field->size = 1;
526526
break;
527-
case SYM_UINT16:
527+
case SYM_UINT16X:
528528
field->type = STRUCT_TYPE_UINT16;
529529
field->size = 2;
530530
break;
531-
case SYM_INT16:
531+
case SYM_INT16X:
532532
field->type = STRUCT_TYPE_INT16;
533533
field->size = 2;
534534
break;
535-
case SYM_UINT32:
535+
case SYM_UINT32X:
536536
field->type = STRUCT_TYPE_UINT32;
537537
field->size = 4;
538538
break;
539-
case SYM_INT32:
539+
case SYM_INT32X:
540540
field->type = STRUCT_TYPE_INT32;
541541
field->size = 4;
542542
break;
543-
case SYM_UINT64:
543+
case SYM_UINT64X:
544544
field->type = STRUCT_TYPE_UINT64;
545545
field->size = 8;
546546
break;
547-
case SYM_INT64:
547+
case SYM_INT64X:
548548
field->type = STRUCT_TYPE_INT64;
549549
field->size = 8;
550550
break;
551-
case SYM_FLOAT:
551+
case SYM_FLOATX:
552552
field->type = STRUCT_TYPE_FLOAT;
553553
field->size = 4;
554554
break;
555-
case SYM_DOUBLE:
555+
case SYM_DOUBLEX:
556556
field->type = STRUCT_TYPE_DOUBLE;
557557
field->size = 8;
558558
break;
@@ -581,10 +581,12 @@ static REBOOL parse_field_type(struct Struct_Field *field, REBVAL *spec, REBVAL
581581
Trap_Types(RE_EXPECT_VAL, REB_BLOCK, VAL_TYPE(val));
582582
}
583583
break;
584+
#ifdef unused
584585
case SYM_REBVAL:
585586
field->type = STRUCT_TYPE_REBVAL;
586587
field->size = sizeof(REBVAL);
587588
break;
589+
#endif
588590
default:
589591
Trap_Type(val);
590592
}

0 commit comments

Comments
 (0)