summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/parser/Nodes.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/parser/Nodes.cpp')
-rw-r--r--Source/JavaScriptCore/parser/Nodes.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/JavaScriptCore/parser/Nodes.cpp b/Source/JavaScriptCore/parser/Nodes.cpp
index 14ee83805..03ee8ee12 100644
--- a/Source/JavaScriptCore/parser/Nodes.cpp
+++ b/Source/JavaScriptCore/parser/Nodes.cpp
@@ -153,8 +153,14 @@ PassRefPtr<EvalNode> EvalNode::create(JSGlobalData* globalData, const JSTokenLoc
FunctionParameters::FunctionParameters(ParameterNode* firstParameter)
{
+ unsigned parameterCount = 0;
for (ParameterNode* parameter = firstParameter; parameter; parameter = parameter->nextParam())
- append(parameter->ident());
+ ++parameterCount;
+
+ reserveInitialCapacity(parameterCount);
+
+ for (ParameterNode* parameter = firstParameter; parameter; parameter = parameter->nextParam())
+ uncheckedAppend(parameter->ident());
}
inline FunctionBodyNode::FunctionBodyNode(JSGlobalData* globalData, const JSTokenLocation& location, bool inStrictContext)