summaryrefslogtreecommitdiff
path: root/tools/d2c/syntax.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/d2c/syntax.c')
-rw-r--r--tools/d2c/syntax.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/tools/d2c/syntax.c b/tools/d2c/syntax.c
index 5fec1a6..8947810 100644
--- a/tools/d2c/syntax.c
+++ b/tools/d2c/syntax.c
@@ -35,8 +35,9 @@
/* Propriétés particulières pour les opérandes */
typedef enum _SyntaxItemFlags
{
- SIF_NONE = (0 << 0), /* Aucune propriété */
- SIF_DECIMAL = (1 << 0) /* Affichage en décimal */
+ SIF_NONE = (0 << 0), /* Aucune propriété */
+ SIF_DECIMAL = (1 << 0), /* Affichage en décimal */
+ SIF_OPTIONAL = (1 << 1) /* Absence tolérée */
} SyntaxItemFlags;
@@ -144,6 +145,11 @@ void register_syntax_item(asm_syntax *syntax, char *name, bool internal)
memmove(name, name + 1, len);
break;
+ case '?':
+ item->flags |= SIF_OPTIONAL;
+ memmove(name, name + 1, len);
+ break;
+
default:
len = 1;
break;