# Changeset View

Changeset View

# Standalone View

Standalone View

# cfe/trunk/include/clang/AST/Type.h

Show First 20 Lines • Show All 1115 Lines • ▼ Show 20 Line(s) | 1095 | enum PrimitiveCopyKind { | |||
---|---|---|---|---|---|

1116 | /// Note that a C++ struct type does not necessarily match this; C++ copying | 1116 | /// Note that a C++ struct type does not necessarily match this; C++ copying | ||

1117 | /// semantics are too complex to express here, in part because they depend | 1117 | /// semantics are too complex to express here, in part because they depend | ||

1118 | /// on the exact constructor or assignment operator that is chosen by | 1118 | /// on the exact constructor or assignment operator that is chosen by | ||

1119 | /// overload resolution to do the copy. | 1119 | /// overload resolution to do the copy. | ||

1120 | PCK_Struct | 1120 | PCK_Struct | ||

1121 | }; | 1121 | }; | ||

1122 | 1122 | | |||

1123 | /// Check if this is a non-trivial type that would cause a C struct | 1123 | /// Check if this is a non-trivial type that would cause a C struct | ||

1124 | /// transitively containing this type to be non-trivial. This function can be | ||||

1125 | /// used to determine whether a field of this type can be declared inside a C | ||||

1126 | /// union. | ||||

1127 | bool isNonTrivialPrimitiveCType(const ASTContext &Ctx) const; | ||||

1128 | | ||||

1129 | /// Check if this is a non-trivial type that would cause a C struct | ||||

1124 | /// transitively containing this type to be non-trivial to copy and return the | 1130 | /// transitively containing this type to be non-trivial to copy and return the | ||

1125 | /// kind. | 1131 | /// kind. | ||

1126 | PrimitiveCopyKind isNonTrivialToPrimitiveCopy() const; | 1132 | PrimitiveCopyKind isNonTrivialToPrimitiveCopy() const; | ||

1127 | 1133 | | |||

1128 | /// Check if this is a non-trivial type that would cause a C struct | 1134 | /// Check if this is a non-trivial type that would cause a C struct | ||

1129 | /// transitively containing this type to be non-trivial to destructively | 1135 | /// transitively containing this type to be non-trivial to destructively | ||

1130 | /// move and return the kind. Destructive move in this context is a C++-style | 1136 | /// move and return the kind. Destructive move in this context is a C++-style | ||

1131 | /// move in which the source object is placed in a valid but unspecified state | 1137 | /// move in which the source object is placed in a valid but unspecified state | ||

▲ Show 20 Lines • Show All 5727 Lines • Show Last 20 Lines |