@@ -2125,14 +2125,6 @@ class Error : Throwable
21252125 }
21262126}
21272127
2128- /* Used in Exception Handling LSDA tables to 'wrap' C++ type info
2129- * so it can be distinguished from D TypeInfo
2130- */
2131- class __cpp_type_info_ptr
2132- {
2133- void * ptr; // opaque pointer to C++ RTTI type info
2134- }
2135-
21362128extern (C )
21372129{
21382130 // from druntime/src/rt/aaA.d
@@ -2821,8 +2813,6 @@ bool _xopCmp(in void*, in void*)
28212813 throw new Error(" TypeInfo.compare is not implemented" );
28222814}
28232815
2824- void __ctfeWrite (scope const (char )[] s) @nogc @safe pure nothrow {}
2825-
28262816/* *****************************************
28272817 * Create RTInfo for type T
28282818 */
@@ -2853,14 +2843,6 @@ template RTInfo(T)
28532843enum immutable (void )* rtinfoNoPointers = null ;
28542844enum immutable (void )* rtinfoHasPointers = cast (void * )1 ;
28552845
2856- // Compiler hook into the runtime implementation of array (vector) operations.
2857- template _arrayOp (Args... )
2858- {
2859- import core.internal.array.operations ;
2860- alias _arrayOp = arrayOp! Args;
2861- }
2862-
2863-
28642846// Helper functions
28652847
28662848private inout (TypeInfo ) getElement (inout TypeInfo value) @trusted pure nothrow
@@ -3301,3 +3283,19 @@ if (is(Obj : Object))
33013283 assert (a >= " hello" );
33023284 assert (a < " я" );
33033285}
3286+
3287+ // Used in Exception Handling LSDA tables to 'wrap' C++ type info
3288+ // so it can be distinguished from D TypeInfo
3289+ class __cpp_type_info_ptr
3290+ {
3291+ void * ptr; // opaque pointer to C++ RTTI type info
3292+ }
3293+
3294+ // Compiler hook into the runtime implementation of array (vector) operations.
3295+ template _arrayOp (Args... )
3296+ {
3297+ import core.internal.array.operations ;
3298+ alias _arrayOp = arrayOp! Args;
3299+ }
3300+
3301+ void __ctfeWrite (scope const (char )[] s) @nogc @safe pure nothrow {}
0 commit comments