/* read.c - read a source file -
Copyright 1986, 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
- 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
+ 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
const char *err;
macro_entry *macro;
- if (check_macro (s, &out, '\0', &err, ¯o))
+ if (check_macro (s, &out, &err, ¯o))
{
if (err != NULL)
as_bad ("%s", err);
}
#ifdef md_do_align
- just_record_alignment:
+ just_record_alignment: ATTRIBUTE_UNUSED_LABEL
#endif
record_alignment (now_seg, n - OCTETS_PER_BYTE_POWER);
sb_new (&out);
- err = expand_irp (irpc, 0, &s, &out, get_line_sb, '\0');
+ err = expand_irp (irpc, 0, &s, &out, get_line_sb);
if (err != NULL)
as_bad_where (file, line, "%s", err);
return 1;
}
-/* Define a macro. This is an interface to macro.c, which is shared
- between gas and gasp. */
+/* Define a macro. This is an interface to macro.c. */
void
s_macro (ignore)
as_bad (_("floating point number invalid"));
}
else if (exp.X_op == O_subtract
- && (S_GET_SEGMENT (exp.X_add_symbol)
- == S_GET_SEGMENT (exp.X_op_symbol))
&& SEG_NORMAL (S_GET_SEGMENT (exp.X_add_symbol))
&& (symbol_get_frag (exp.X_add_symbol)
== symbol_get_frag (exp.X_op_symbol)))
x->sub = exp->X_op_symbol;
x->addnum = exp->X_add_number;
x->added = 0;
+ x->use_jump = 0;
new_broken_words++;
return;
}
}
offsetT
-get_absolute_expression ()
+get_absolute_expr (exp)
+ expressionS *exp;
{
- expressionS exp;
-
- expression (&exp);
- if (exp.X_op != O_constant)
+ expression (exp);
+ if (exp->X_op != O_constant)
{
- if (exp.X_op != O_absent)
+ if (exp->X_op != O_absent)
as_bad (_("bad or irreducible absolute expression"));
- exp.X_add_number = 0;
+ exp->X_add_number = 0;
}
- return exp.X_add_number;
+ return exp->X_add_number;
+}
+
+offsetT
+get_absolute_expression ()
+{
+ expressionS exp;
+
+ return get_absolute_expr (&exp);
}
char /* Return terminator. */