diff options
author | Fred Hornsey <hornseyf@objectcomputing.com> | 2020-05-29 12:19:43 -0500 |
---|---|---|
committer | Fred Hornsey <hornseyf@objectcomputing.com> | 2020-05-29 12:19:43 -0500 |
commit | 6778610a1441288247e5575346cce16f5daead60 (patch) | |
tree | 0c3fa413f1c31466cad6e0827ba4ec7aadc628cc | |
parent | adced9754c8ffca51fdba3189775e7dc757fd02b (diff) | |
download | ATCD-6778610a1441288247e5575346cce16f5daead60.tar.gz |
TAO IDL FE: Use Existing Anon Type Feature in IDL4
This just uses the existing IDL2 support to enable using them in IDL4,
but it's not know how good that support is. At the very least a new test
will have to be made in tests/IDLv4.
-rw-r--r-- | TAO/TAO_IDL/util/utl_err.cpp | 6 | ||||
-rw-r--r-- | TAO/TAO_IDL/util/utl_global.cpp | 9 |
2 files changed, 10 insertions, 5 deletions
diff --git a/TAO/TAO_IDL/util/utl_err.cpp b/TAO/TAO_IDL/util/utl_err.cpp index f29db6e97db..a4b03906149 100644 --- a/TAO/TAO_IDL/util/utl_err.cpp +++ b/TAO/TAO_IDL/util/utl_err.cpp @@ -185,9 +185,11 @@ error_string (UTL_Error::ErrorCode c) case UTL_Error::EIDL_KEYWORD_WARNING: return "Warning - spelling differs from IDL keyword only in case: "; case UTL_Error::EIDL_ANONYMOUS_ERROR: - return "Error: anonymous types are deprecated by OMG spec"; + return "Error: anonymous types are deprecated by OMG spec in IDL3, " + "but are valid again in IDL4"; case UTL_Error::EIDL_ANONYMOUS_WARNING: - return "Warning - anonymous types are deprecated by OMG spec"; + return "Warning - anonymous types are deprecated by OMG spec in IDL3, " + "but are valid in IDL4"; case UTL_Error::EIDL_ENUM_VAL_EXPECTED: return "enumerator expected: "; case UTL_Error::EIDL_ENUM_VAL_NOT_FOUND: diff --git a/TAO/TAO_IDL/util/utl_global.cpp b/TAO/TAO_IDL/util/utl_global.cpp index 11a2390ed39..1292fa18d53 100644 --- a/TAO/TAO_IDL/util/utl_global.cpp +++ b/TAO/TAO_IDL/util/utl_global.cpp @@ -1844,19 +1844,22 @@ IDL_GlobalData::anon_type_diagnostic ( bool IDL_GlobalData::anon_error (void) const { - return (this->anon_type_diagnostic_ == ANON_TYPE_ERROR); + return anon_type_diagnostic_ == ANON_TYPE_ERROR && + !(idl_version_ >= IDL_VERSION_4); } bool IDL_GlobalData::anon_warning (void) const { - return (this->anon_type_diagnostic_ == ANON_TYPE_WARNING); + return anon_type_diagnostic_ == ANON_TYPE_WARNING && + !(idl_version_ >= IDL_VERSION_4); } bool IDL_GlobalData::anon_silent (void) const { - return (this->anon_type_diagnostic_ == ANON_TYPE_SILENT); + return anon_type_diagnostic_ == ANON_TYPE_SILENT || + idl_version_ >= IDL_VERSION_4; } bool |