summaryrefslogtreecommitdiff
path: root/idlc/inc
diff options
context:
space:
mode:
authorRüdiger Timm <rt@openoffice.org>2006-03-09 09:48:31 +0000
committerRüdiger Timm <rt@openoffice.org>2006-03-09 09:48:31 +0000
commitd246a0aef9c12fae10310457c6e3e9c44137611b (patch)
tree56adddff84a163fc254eac31e300d668f3fbb6cb /idlc/inc
parentf970b9fb783f9a439c6bdd87b5ebe65136b2e83b (diff)
INTEGRATION: CWS jl31 (1.3.18); FILE MERGED
2006/02/20 15:58:27 sb 1.3.18.1: #i62339# Forbid any unsigned types (i.e., not just UNSIGNED SHORT/LONG/HYPER, but also sequences of such) as type arguments of instantiated polymorphic struct types.
Diffstat (limited to 'idlc/inc')
-rw-r--r--idlc/inc/idlc/astbasetype.hxx15
-rw-r--r--idlc/inc/idlc/astsequence.hxx7
-rw-r--r--idlc/inc/idlc/asttypedef.hxx7
3 files changed, 23 insertions, 6 deletions
diff --git a/idlc/inc/idlc/astbasetype.hxx b/idlc/inc/idlc/astbasetype.hxx
index 1fa0630985ff..b6b74d5fdcf7 100644
--- a/idlc/inc/idlc/astbasetype.hxx
+++ b/idlc/inc/idlc/astbasetype.hxx
@@ -4,9 +4,9 @@
*
* $RCSfile: astbasetype.hxx,v $
*
- * $Revision: 1.3 $
+ * $Revision: 1.4 $
*
- * last change: $Author: rt $ $Date: 2005-09-07 17:55:03 $
+ * last change: $Author: rt $ $Date: 2006-03-09 10:47:58 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -53,6 +53,17 @@ public:
virtual ~AstBaseType() {}
+ virtual bool isUnsigned() const {
+ switch (m_exprType) {
+ case ET_ushort:
+ case ET_ulong:
+ case ET_uhyper:
+ return true;
+ default:
+ return false;
+ }
+ }
+
const ExprType getExprType() const
{ return m_exprType; }
private:
diff --git a/idlc/inc/idlc/astsequence.hxx b/idlc/inc/idlc/astsequence.hxx
index 872fc92556c3..93d4ce321115 100644
--- a/idlc/inc/idlc/astsequence.hxx
+++ b/idlc/inc/idlc/astsequence.hxx
@@ -4,9 +4,9 @@
*
* $RCSfile: astsequence.hxx,v $
*
- * $Revision: 1.3 $
+ * $Revision: 1.4 $
*
- * last change: $Author: rt $ $Date: 2005-09-07 18:00:19 $
+ * last change: $Author: rt $ $Date: 2006-03-09 10:48:09 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -56,6 +56,9 @@ public:
AstType* getMemberType()
{ return m_pMemberType; }
+ virtual bool isUnsigned() const
+ { return m_pMemberType != 0 && m_pMemberType->isUnsigned(); }
+
virtual const sal_Char* getRelativName() const;
private:
AstType* m_pMemberType;
diff --git a/idlc/inc/idlc/asttypedef.hxx b/idlc/inc/idlc/asttypedef.hxx
index 749d61fc0cf4..7e6e3af08c15 100644
--- a/idlc/inc/idlc/asttypedef.hxx
+++ b/idlc/inc/idlc/asttypedef.hxx
@@ -4,9 +4,9 @@
*
* $RCSfile: asttypedef.hxx,v $
*
- * $Revision: 1.3 $
+ * $Revision: 1.4 $
*
- * last change: $Author: rt $ $Date: 2005-09-07 18:02:35 $
+ * last change: $Author: rt $ $Date: 2006-03-09 10:48:31 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -51,6 +51,9 @@ public:
AstType const * getBaseType() const
{ return m_pBaseType; }
+ virtual bool isUnsigned() const
+ { return m_pBaseType != 0 && m_pBaseType->isUnsigned(); }
+
virtual sal_Bool dump(RegistryKey& rKey);
private:
AstType const * m_pBaseType;