• Sigurd Schneider's avatar
    [torque] Make torque declarations order independent · 70678d53
    Sigurd Schneider authored
    Torque semantic analysis is now a four-stage process:
    
     1. The TypeDeclarationVisitor introduces a TypeAlias for every
        TypeDeclaration* (or derived) in the Torque source, but does
        not process the TypeDeclaration* itself.
     2. All aliases are resolved in a dependency respecting manner.
        This CL also changes struct member resolution to happen at
        this point already. Types for classes are created, but their
        members are not resolved to allow classes to mutually reference
        each other in their field types.
     3. 'value' declarations (macros, etc.) are processed.
     4. Members of classes are processed.
    
    Bug: v8:7793
    Change-Id: I46108555a5cdf30df03c5d4399ec786ee6cc6df4
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584319
    Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
    Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#61264}
    70678d53
test-torque.tq 20.8 KB