summaryrefslogtreecommitdiff
path: root/src/parsers/decl
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-07-21 20:55:00 +0300
committerAndrei Karas <akaras@inbox.ru>2015-07-21 20:55:00 +0300
commit09842c339f6ce04b1e4c64258498a05576527961 (patch)
treef3344bc00ba048fdfb206775f4630bed58b6cae2 /src/parsers/decl
parentbb3d13f93d26d281b6c78dc47dc94e8507f26b6f (diff)
downloadparanucker-09842c339f6ce04b1e4c64258498a05576527961.tar.gz
paranucker-09842c339f6ce04b1e4c64258498a05576527961.tar.bz2
paranucker-09842c339f6ce04b1e4c64258498a05576527961.tar.xz
paranucker-09842c339f6ce04b1e4c64258498a05576527961.zip
Allow in each node set limit for child nodes to parse.
Diffstat (limited to 'src/parsers/decl')
-rw-r--r--src/parsers/decl/field_decl.cpp2
-rw-r--r--src/parsers/decl/function_decl.cpp2
-rw-r--r--src/parsers/decl/parm_decl.cpp2
-rw-r--r--src/parsers/decl/result_decl.cpp2
-rw-r--r--src/parsers/decl/type_decl.cpp2
-rw-r--r--src/parsers/decl/var_decl.cpp12
6 files changed, 11 insertions, 11 deletions
diff --git a/src/parsers/decl/field_decl.cpp b/src/parsers/decl/field_decl.cpp
index e7521fd..e511663 100644
--- a/src/parsers/decl/field_decl.cpp
+++ b/src/parsers/decl/field_decl.cpp
@@ -75,7 +75,7 @@ void parseFieldDeclNode(FieldDeclNode *node)
node,
TREE_TYPE(node->gccNode),
"field type",
- node->parseChilds));
+ 5));
}
}
diff --git a/src/parsers/decl/function_decl.cpp b/src/parsers/decl/function_decl.cpp
index 6aadec4..f8a5579 100644
--- a/src/parsers/decl/function_decl.cpp
+++ b/src/parsers/decl/function_decl.cpp
@@ -54,7 +54,7 @@ void parseFunctionDeclNode(FunctionDeclNode *node)
"function type",
node->parseChilds));
- if (!node->parseChilds)
+ if (node->parseChilds <= 0)
return;
node->result = static_cast<ResultDeclNode*>(createParseNode(
diff --git a/src/parsers/decl/parm_decl.cpp b/src/parsers/decl/parm_decl.cpp
index 7de6ebf..0f2e966 100644
--- a/src/parsers/decl/parm_decl.cpp
+++ b/src/parsers/decl/parm_decl.cpp
@@ -40,7 +40,7 @@ void parseParmDeclNode(ParmDeclNode *node)
fillDeclAutoGenerated(node);
- if (!node->parseChilds)
+ if (node->parseChilds <= 0)
return;
fillDeclAttributes(node);
diff --git a/src/parsers/decl/result_decl.cpp b/src/parsers/decl/result_decl.cpp
index 6fde94a..d6ef1f8 100644
--- a/src/parsers/decl/result_decl.cpp
+++ b/src/parsers/decl/result_decl.cpp
@@ -39,7 +39,7 @@ void parseResultDeclNode(ResultDeclNode *node)
fillDeclAutoGenerated(node);
- if (!node->parseChilds)
+ if (node->parseChilds <= 0)
return;
fillDeclAttributes(node);
diff --git a/src/parsers/decl/type_decl.cpp b/src/parsers/decl/type_decl.cpp
index fae5b2e..f45e01c 100644
--- a/src/parsers/decl/type_decl.cpp
+++ b/src/parsers/decl/type_decl.cpp
@@ -37,7 +37,7 @@ void parseTypeDeclNode(TypeDeclNode *node)
fillDeclAutoGenerated(node);
- if (!node->parseChilds)
+ if (node->parseChilds <= 0)
return;
fillDeclAttributes(node);
diff --git a/src/parsers/decl/var_decl.cpp b/src/parsers/decl/var_decl.cpp
index d0c4af9..e90a4e7 100644
--- a/src/parsers/decl/var_decl.cpp
+++ b/src/parsers/decl/var_decl.cpp
@@ -51,7 +51,7 @@ void parseVarDeclNode(VarDeclNode *node)
foundNodesMap[node->gccNode]);
if (!oldNode->complete)
{
- if (!node->parseChilds)
+ if (node->parseChilds <= 0)
{
updateNodesMap[node] = oldNode;
return;
@@ -62,19 +62,19 @@ void parseVarDeclNode(VarDeclNode *node)
DECL_SIZE(node->gccNode),
INTEGER_CST,
"decl size 2",
- false));
+ 3));
node->initial = createParseNode(
node,
DECL_INITIAL(node->gccNode),
"initial 2",
- false);
+ 3);
node->varType = static_cast<TypeNode*>(createParseNode(
node,
TREE_TYPE(node->gccNode),
"var type 2",
- false));
+ 3));
}
else
{
@@ -89,7 +89,7 @@ void parseVarDeclNode(VarDeclNode *node)
foundNodesMap[node->gccNode] = node;
}
- if (!node->parseChilds)
+ if (node->parseChilds <= 0)
return;
fillDeclAttributes(node);
@@ -105,7 +105,7 @@ void parseVarDeclNode(VarDeclNode *node)
node,
DECL_INITIAL(node->gccNode),
"initial",
- false);
+ 3);
node->varType = static_cast<TypeNode*>(createParseNode(
node,