summaryrefslogtreecommitdiff
path: root/gas/expr.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>1999-06-07 10:23:47 +0000
committerRichard Henderson <rth@redhat.com>1999-06-07 10:23:47 +0000
commitbf29b231782c4f6533dcf65cec243e0d72ec8e2e (patch)
tree590f22c9ccc928c50b31cefc28098852c90bf37f /gas/expr.h
parent32a5c94a565d71084ec0338e3877c4f93365bdf2 (diff)
downloadbinutils-gdb-bf29b231782c4f6533dcf65cec243e0d72ec8e2e.tar.gz
* expr.h (struct expressionS): Revert last change; widen X_op.
* config/tc-alpha.c (md_begin): Check the field is wide enough.
Diffstat (limited to 'gas/expr.h')
-rw-r--r--gas/expr.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/gas/expr.h b/gas/expr.h
index 32a16619b1d..e3764092970 100644
--- a/gas/expr.h
+++ b/gas/expr.h
@@ -116,8 +116,14 @@ typedef struct expressionS
symbolS *X_op_symbol;
/* A number to add. */
offsetT X_add_number;
- /* The type of the expression. */
- operatorT X_op;
+ /* The type of the expression. We can't assume that an arbitrary
+ compiler can handle a bitfield of enum type. FIXME: We could
+ check this using autoconf. */
+#ifdef __GNUC__
+ operatorT X_op : 7;
+#else
+ unsigned X_op : 7;
+#endif
/* Non-zero if X_add_number should be regarded as unsigned. This is
only valid for O_constant expressions. It is only used when an
O_constant must be extended into a bignum (i.e., it is not used