diff options
author | Patrick Palka <ppalka@gcc.gnu.org> | 2015-12-17 03:46:27 +0000 |
---|---|---|
committer | Patrick Palka <ppalka@gcc.gnu.org> | 2015-12-17 03:46:27 +0000 |
commit | 5fdfa03e795034058a66f641eb9d1f4499052639 (patch) | |
tree | 7b9235cae70f31a65a8914b02f17e8d4ff8dcb73 | |
parent | a2f325f94a35e1817bdcfbf6db9df1d90837ec7c (diff) | |
download | gcc-5fdfa03e795034058a66f641eb9d1f4499052639.zip gcc-5fdfa03e795034058a66f641eb9d1f4499052639.tar.gz gcc-5fdfa03e795034058a66f641eb9d1f4499052639.tar.bz2 |
Avoid code duplication in cp_tree_[operand|code]_length
gcc/cp/ChangeLog:
* tree.c (cp_tree_operand_length): Define in terms of
cp_tree_code_length.
From-SVN: r231735
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/tree.c | 19 |
2 files changed, 8 insertions, 16 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 1ffa6eb..91bc456 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2015-12-16 Patrick Palka <ppalka@gcc.gnu.org> + + * tree.c (cp_tree_operand_length): Define in terms of + cp_tree_code_length. + 2015-12-16 Martin Sebor <msebor@redhat.com> PR objc++/68932 diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c index 0c0987d..ae176d0 100644 --- a/gcc/cp/tree.c +++ b/gcc/cp/tree.c @@ -4427,23 +4427,10 @@ cp_tree_operand_length (const_tree t) { enum tree_code code = TREE_CODE (t); - switch (code) - { - case PREINCREMENT_EXPR: - case PREDECREMENT_EXPR: - case POSTINCREMENT_EXPR: - case POSTDECREMENT_EXPR: - return 1; + if (TREE_CODE_CLASS (code) == tcc_vl_exp) + return VL_EXP_OPERAND_LENGTH (t); - case ARRAY_REF: - return 2; - - case EXPR_PACK_EXPANSION: - return 1; - - default: - return TREE_OPERAND_LENGTH (t); - } + return cp_tree_code_length (code); } /* Like cp_tree_operand_length, but takes a tree_code CODE. */ |