struct InterpStack::StackChunk

Declaration

struct InterpStack::StackChunk { /* full declaration omitted */ };

Description

Metadata for each stack chunk. The stack is composed of a linked list of chunks. Whenever an allocation is out of bounds, a new chunk is linked. When a chunk becomes empty, it is not immediately freed: a chunk is deallocated only when the predecessor becomes empty.

Declared at: clang/lib/AST/Interp/InterpStack.h:88

Member Variables

public clang::interp::InterpStack::StackChunk* Next
public clang::interp::InterpStack::StackChunk* Prev
public char* End

Method Overview

  • public StackChunk(clang::interp::InterpStack::StackChunk * Prev = nullptr)
  • public size_t size()
  • public char * start()

Methods

StackChunk(clang::interp::InterpStack::StackChunk*
               Prev = nullptr)

Declared at: clang/lib/AST/Interp/InterpStack.h:93

Parameters

clang::interp::InterpStack::StackChunk* Prev = nullptr

size_t size()

Description

Returns the size of the chunk, minus the header.

Declared at: clang/lib/AST/Interp/InterpStack.h:97

char* start()

Description

Returns a pointer to the start of the data region.

Declared at: clang/lib/AST/Interp/InterpStack.h:100