diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-06-19 23:56:56 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-06-19 23:56:56 +0000 |
commit | 690a42fbe34c5376c7920332ce2e4d05c72d8a4a (patch) | |
tree | 2bc05d1357374e07a833d9542cb5ca01328f8934 /gcc/cp | |
parent | dbc825292924f4dbcb05a59c5837e0aa204ba7af (diff) | |
download | gcc-690a42fbe34c5376c7920332ce2e4d05c72d8a4a.tar.gz |
* semantics.c (finish_asm_statement): Apply decay conversions to
input operands.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@27617 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 3 | ||||
-rw-r--r-- | gcc/cp/semantics.c | 7 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index eca957246c2..9885a33a0b7 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,8 @@ 1999-06-19 Mark Mitchell <mark@codesourcery.com> + * semantics.c (finish_asm_statement): Apply decay conversions to + input operands. + * decl.c (expand_static_init): When building an anonymous function for use with atexit, compute its body before and after entering the function. diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index ee6b99b3f20..1659ec85fe0 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -754,11 +754,16 @@ finish_asm_stmt (cv_qualifier, string, output_operands, if (output_operands != NULL_TREE || input_operands != NULL_TREE || clobbers != NULL_TREE) { + tree t; + if (cv_qualifier != NULL_TREE && cv_qualifier != ridpointers[(int) RID_VOLATILE]) cp_warning ("%s qualifier ignored on asm", IDENTIFIER_POINTER (cv_qualifier)); - + + for (t = input_operands; t; t = TREE_CHAIN (t)) + TREE_VALUE (t) = decay_conversion (TREE_VALUE (t)); + c_expand_asm_operands (string, output_operands, input_operands, clobbers, |