ecma_stringbuilder_grow (ecma_stringbuilder_t *builder_p, /**< string builder */
                         lit_utf8_size_t required_size) /**< required size */
{
  ecma_stringbuilder_header_t *header_p = builder_p->header_p;
  JERRY_ASSERT (header_p != NULL);

  const lit_utf8_size_t new_size = header_p->current_size + required_size;
  header_p = jmem_heap_realloc_block (header_p, header_p->current_size, new_size);
  header_p->current_size = new_size;
  builder_p->header_p = header_p;

#if JERRY_MEM_STATS
  jmem_stats_allocate_string_bytes (required_size);
#endif /* JERRY_MEM_STATS */

  return ((lit_utf8_byte_t *)  header_p) + header_p->current_size - required_size;
} /* ecma_stringbuilder_grow */
ecma_stringbuilder_grow (ecma_stringbuilder_t *builder_p,  
                         lit_utf8_size_t required_size)  
{
  ecma_stringbuilder_header_t *header_p = builder_p->header_p;
  JERRY_ASSERT (header_p != NULL);

  const lit_utf8_size_t new_size = header_p->current_size + required_size;
  header_p = jmem_heap_realloc_block (header_p, header_p->current_size, new_size);
  header_p->current_size = new_size;
  builder_p->header_p = header_p;

#if JERRY_MEM_STATS
  jmem_stats_allocate_string_bytes (required_size);
#endif  

  return ((lit_utf8_byte_t *)  header_p) + header_p->current_size - required_size;
}  