From 85638a0313cec9f6e5b9e98b3b1ac7c630508117 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Thu, 17 Mar 2011 10:59:29 +0000 Subject: PR 12569 * expr.c (operand): Correct passing of "mode" to expr. * read.c (do_org): Allow expr_section. (get_known_segmented_expression): Don't assert anything about the segment. --- gas/expr.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'gas/expr.c') diff --git a/gas/expr.c b/gas/expr.c index 52eb472441..0563b5b421 100644 --- a/gas/expr.c +++ b/gas/expr.c @@ -1,6 +1,6 @@ /* expr.c -operands, expressions- Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -959,10 +959,7 @@ operand (expressionS *expressionP, enum expr_mode mode) #endif case '(': /* Didn't begin with digit & not a name. */ - if (mode != expr_defer) - segment = expression (expressionP); - else - segment = deferred_expression (expressionP); + segment = expr (0, expressionP, mode); /* expression () will pass trailing whitespace. */ if ((c == '(' && *input_line_pointer != ')') || (c == '[' && *input_line_pointer != ']')) -- cgit v1.2.1