summaryrefslogtreecommitdiff
path: root/cpp/src/Slice/Parser.cpp
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2018-10-16 00:53:00 +0200
committerJose <jose@zeroc.com>2018-10-16 00:53:00 +0200
commitcf8292f9cdadcb6619287ada4f5273c25c5a3cfb (patch)
tree4a227f287d2a5e22e36b1f488f00a3c96add7a44 /cpp/src/Slice/Parser.cpp
parentUpdated VS2017 requirement (diff)
downloadice-cf8292f9cdadcb6619287ada4f5273c25c5a3cfb.tar.bz2
ice-cf8292f9cdadcb6619287ada4f5273c25c5a3cfb.tar.xz
ice-cf8292f9cdadcb6619287ada4f5273c25c5a3cfb.zip
Typescript support
Diffstat (limited to 'cpp/src/Slice/Parser.cpp')
-rw-r--r--cpp/src/Slice/Parser.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/cpp/src/Slice/Parser.cpp b/cpp/src/Slice/Parser.cpp
index 19ed36efd5f..e1be83afdc4 100644
--- a/cpp/src/Slice/Parser.cpp
+++ b/cpp/src/Slice/Parser.cpp
@@ -362,10 +362,11 @@ Slice::SyntaxTreeBase::visit(ParserVisitor*, bool)
{
}
-Slice::SyntaxTreeBase::SyntaxTreeBase(const UnitPtr& unit) :
- _unit(unit)
+Slice::SyntaxTreeBase::SyntaxTreeBase(const UnitPtr& unit, const DefinitionContextPtr& definitionContext) :
+ _unit(unit),
+ _definitionContext(definitionContext)
{
- if(_unit)
+ if(!_definitionContext && _unit)
{
_definitionContext = unit->currentDefinitionContext();
}
@@ -4359,8 +4360,8 @@ Slice::Proxy::_class() const
}
Slice::Proxy::Proxy(const ClassDeclPtr& cl) :
- SyntaxTreeBase(cl->unit()),
- Type(cl->unit()),
+ SyntaxTreeBase(cl->unit(), cl->definitionContext()),
+ Type(cl->unit()),
_classDecl(cl)
{
}