; RUN: llvm-pdbutil dump -types %p/Inputs/every-class.pdb \ ; RUN: | FileCheck %s ; CHECK: Types (TPI Stream) ; CHECK: ============================================================ ; CHECK: Showing 157 records ; CHECK: 0x1008 | LF_STRUCTURE [size = 124] `main::__l2::<unnamed-type-Anonymous>` ; CHECK: unique name: `.?AU<unnamed-type-Anonymous>@?1??main@@YAHHPEAPEAD@Z@`aa6523bc` ; CHECK: vtable: <no type>, base list: <no type>, field list: 0x1007 ; CHECK: options: has unique name | scoped, sizeof 1 ; CHECK: 0x1009 | LF_STRUCTURE [size = 88] `main::__l2::Scoped` ; CHECK: unique name: `.?AUScoped@?1??main@@YAHHPEAPEAD@Z@`aa6523bc` ; CHECK: vtable: <no type>, base list: <no type>, field list: 0x1007 ; CHECK: options: has unique name | scoped, sizeof 1 ; CHECK: 0x1054 | LF_STRUCTURE [size = 48] `Nested::F` ; CHECK: unique name: `.?AUF@Nested@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: <no type> ; CHECK: options: forward ref (-> 0x1057) | has unique name | is nested, sizeof 0 ; CHECK: 0x1056 | LF_STRUCTURE [size = 44] `Nested` ; CHECK: unique name: `.?AUNested@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: 0x1055 ; CHECK: options: contains nested class | has unique name, sizeof 1 ; CHECK: 0x1057 | LF_STRUCTURE [size = 48] `Nested::F` ; CHECK: unique name: `.?AUF@Nested@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: 0x1007 ; CHECK: options: has unique name | is nested, sizeof 1 ; CHECK: 0x1058 | LF_STRUCTURE [size = 52] `Constructor` ; CHECK: unique name: `.?AUConstructor@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: <no type> ; CHECK: options: forward ref (-> 0x105C) | has unique name, sizeof 0 ; CHECK: 0x105C | LF_STRUCTURE [size = 52] `Constructor` ; CHECK: unique name: `.?AUConstructor@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: 0x105B ; CHECK: options: has ctor / dtor | has unique name, sizeof 1 ; CHECK: 0x105D | LF_CLASS [size = 40] `Class` ; CHECK: unique name: `.?AVClass@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: 0x1007 ; CHECK: options: has unique name, sizeof 1 ; CHECK: 0x105E | LF_UNION [size = 32] `Union` ; CHECK: unique name: `.?ATUnion@@` ; CHECK: field list: 0x1007 ; CHECK: options: has unique name | sealed, sizeof 1 ; CHECK: 0x105F | LF_STRUCTURE [size = 48] `Operator` ; CHECK: unique name: `.?AUOperator@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: <no type> ; CHECK: options: forward ref (-> 0x1064) | has unique name, sizeof 0 ; CHECK: 0x1064 | LF_STRUCTURE [size = 48] `Operator` ; CHECK: unique name: `.?AUOperator@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: 0x1063 ; CHECK: options: has unique name | overloaded operator, sizeof 1 ; CHECK: 0x1066 | LF_ENUM [size = 36] `Enum` ; CHECK: unique name: `.?AW4Enum@@` ; CHECK: field list: 0x1065, underlying type: 0x0074 (int) ; CHECK: options: has unique name ; CHECK: 0x1067 | LF_STRUCTURE [size = 40] `Cast` ; CHECK: unique name: `.?AUCast@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: <no type> ; CHECK: options: forward ref (-> 0x106B) | has unique name, sizeof 0 ; CHECK: 0x106B | LF_STRUCTURE [size = 40] `Cast` ; CHECK: unique name: `.?AUCast@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: 0x106A ; CHECK: options: conversion operator | has unique name | overloaded operator, sizeof 1 ; CHECK: 0x106C | LF_STRUCTURE [size = 44] `Nothing` ; CHECK: unique name: `.?AUNothing@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: 0x1007 ; CHECK: options: has unique name, sizeof 1 ; CHECK: 0x106D | LF_STRUCTURE [size = 52] `Assignment` ; CHECK: unique name: `.?AUAssignment@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: <no type> ; CHECK: options: forward ref (-> 0x1073) | has unique name, sizeof 0 ; CHECK: 0x1073 | LF_STRUCTURE [size = 52] `Assignment` ; CHECK: unique name: `.?AUAssignment@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: 0x1072 ; CHECK: options: has unique name | overloaded operator | overloaded operator=, sizeof 1 ; CHECK: 0x1074 | LF_STRUCTURE [size = 44] `Nothing` ; CHECK: unique name: `.?AUNothing@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: <no type> ; CHECK: options: forward ref (<- 0x106C) | has unique name, sizeof 0 ; CHECK: 0x1081 | LF_UNION [size = 32] `Union` ; CHECK: unique name: `.?ATUnion@@` ; CHECK: field list: <no type> ; CHECK: options: forward ref (<- 0x105E) | has unique name, sizeof 0 ; CHECK: 0x1084 | LF_STRUCTURE [size = 124] `main::__l2::<unnamed-type-Anonymous>` ; CHECK: unique name: `.?AU<unnamed-type-Anonymous>@?1??main@@YAHHPEAPEAD@Z@`aa6523bc` ; CHECK: vtable: <no type>, base list: <no type>, field list: <no type> ; CHECK: options: forward ref (<- 0x1008) | has unique name | scoped, sizeof 0 ; CHECK: 0x108E | LF_STRUCTURE [size = 44] `Nested` ; CHECK: unique name: `.?AUNested@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: <no type> ; CHECK: options: forward ref (<- 0x1056) | has unique name, sizeof 0 ; CHECK: 0x1095 | LF_STRUCTURE [size = 88] `main::__l2::Scoped` ; CHECK: unique name: `.?AUScoped@?1??main@@YAHHPEAPEAD@Z@`aa6523bc` ; CHECK: vtable: <no type>, base list: <no type>, field list: <no type> ; CHECK: options: forward ref (<- 0x1009) | has unique name | scoped, sizeof 0 ; CHECK: 0x1098 | LF_CLASS [size = 40] `Class` ; CHECK: unique name: `.?AVClass@@` ; CHECK: vtable: <no type>, base list: <no type>, field list: <no type> ; CHECK: options: forward ref (<- 0x105D) | has unique name, sizeof 0