diff options
author | Oliver Kellogg <okellogg@users.sourceforge.net> | 2023-01-14 23:33:27 +0100 |
---|---|---|
committer | Oliver Kellogg <okellogg@users.sourceforge.net> | 2023-01-14 23:33:27 +0100 |
commit | f790b484f95da51afd080f5cc73209c086476ad2 (patch) | |
tree | 70f7566aee382f71257e1ebfa9b0ce87b678c995 /TAO/TAO_IDL | |
parent | 0fd18ea8107aed0274c5e73da15f6f7e18337f8b (diff) | |
download | ATCD-f790b484f95da51afd080f5cc73209c086476ad2.tar.gz |
Address issue #2015 : In TAO/TAO_IDL/ast/ast_field.cpp constructor handle AST_Decl::NT_except.
Diffstat (limited to 'TAO/TAO_IDL')
-rw-r--r-- | TAO/TAO_IDL/ast/ast_argument.cpp | 11 | ||||
-rw-r--r-- | TAO/TAO_IDL/ast/ast_field.cpp | 4 |
2 files changed, 15 insertions, 0 deletions
diff --git a/TAO/TAO_IDL/ast/ast_argument.cpp b/TAO/TAO_IDL/ast/ast_argument.cpp index 0fbe32d0656..039e5662f23 100644 --- a/TAO/TAO_IDL/ast/ast_argument.cpp +++ b/TAO/TAO_IDL/ast/ast_argument.cpp @@ -70,6 +70,11 @@ trademarks or registered trademarks of Sun Microsystems, Inc. #include "ast_argument.h" #include "ast_visitor.h" +#include "ast_type.h" + +#include "utl_err.h" + +#include "global_extern.h" // Static functions. @@ -101,6 +106,12 @@ AST_Argument::AST_Argument (Direction d, AST_Field (AST_Decl::NT_argument, ft, n), pd_direction (d) { + AST_Decl::NodeType fnt = ft->node_type (); + + if (fnt == AST_Decl::NT_except) + { + idl_global->err ()->not_a_type (ft); + } } AST_Argument::~AST_Argument () diff --git a/TAO/TAO_IDL/ast/ast_field.cpp b/TAO/TAO_IDL/ast/ast_field.cpp index 6b09b061604..bacbf80714c 100644 --- a/TAO/TAO_IDL/ast/ast_field.cpp +++ b/TAO/TAO_IDL/ast/ast_field.cpp @@ -115,6 +115,10 @@ AST_Field::AST_Field (AST_Type *ft, idl_global->err ()->not_a_type (ft); } } + else if (fnt == AST_Decl::NT_except) + { + idl_global->err ()->not_a_type (ft); + } } // To be used when constructing a node of a subclass of AST_Field. |