1 // { dg-lto-do link } 2 // { dg-lto-options {{-O3 -Wno-multichar -Wno-return-type}} } 3 // { dg-extra-ld-options "-flto -flto-partition=1to1 -r -nostdlib" } 4 5 extern "C" { 6 typedef struct { 7 union { 8 } 9 __value; 10 } 11 __mbstate_t; 12 struct _IO_marker { 13 }; 14 extern "C" { 15 } 16 }; 17 namespace pov_base { 18 class IOBase { 19 }; 20 } 21 namespace pov { 22 typedef double VECTOR[3]; 23 enum { 24 X = 0, Y = 1, Z = 2, T = 3 }; Assign_Vector(VECTOR d,VECTOR s)25 inline void Assign_Vector(VECTOR d, VECTOR s) { 26 } 27 typedef float BBOX_VAL; 28 typedef BBOX_VAL BBOX_VECT[3]; 29 typedef struct Bounding_Box_Struct BBOX; 30 struct Bounding_Box_Struct { 31 }; Make_BBox_from_min_max(BBOX & BBox,BBOX_VECT mins,BBOX_VECT maxs)32 inline void Make_BBox_from_min_max(BBOX& BBox, BBOX_VECT mins, BBOX_VECT maxs) { 33 } 34 typedef long long COUNTER; DBL_Counter(COUNTER x)35 inline double DBL_Counter(COUNTER x) { 36 } 37 struct Image_Struct { 38 union { 39 } 40 data; 41 }; 42 struct Density_file_Data_Struct { 43 union { 44 } 45 Vals; 46 }; 47 struct Pigment_Struct { 48 union { 49 struct { 50 } 51 Brick; 52 struct { 53 } 54 Fractal; 55 struct { 56 } 57 Function; 58 } 59 Vals; 60 }; 61 typedef enum shelltype { 62 PRE_SCENE_SHL = 0, PRE_FRAME_SHL, POST_FRAME_SHL, POST_SCENE_SHL, USER_ABORT_SHL, FATAL_SHL, MAX_SHL } 63 SHELLRET; 64 } 65 typedef void * POVMSContext; 66 struct POVMSData { 67 }; 68 int POVMS_OpenContext (POVMSContext *contextrefptr); 69 namespace pov_base { 70 enum { 71 kFalseErr = 1, kOutOfSyncErr = 2, kNotNowErr = kOutOfSyncErr, kQueueFullErr = 3 }; 72 } 73 namespace pov_base { 74 class OTextStream { 75 }; 76 } 77 enum { 78 kPOVMsgClass_RenderControl = 'Ctrl', kPOVMsgClass_RenderOutput = 'Outp', kPOVMsgClass_IniOptions = 'IniO', kPOVMsgClass_Miscellaneous = 'Misc' }; 79 namespace pov_base { 80 class PlatformBase { 81 }; 82 } 83 class POVMS_Container { Read(T & stream)84 template<class T> void Read(T& stream) { 85 } 86 }; 87 class POVMS_MessageReceiver { 88 private: class HandlerOO { 89 }; 90 protected: template<class T> class MemberHandlerOO : public HandlerOO { 91 }; 92 class FunctionHandlerOO : public HandlerOO { 93 }; InstallFront(unsigned int hclass,unsigned int hid,T * cptr,typename MemberHandlerOO<T>::MemberHandlerPtr hptr)94 template<class T> void InstallFront(unsigned int hclass, unsigned int hid, T *cptr, typename MemberHandlerOO<T>::MemberHandlerPtr hptr) { 95 } 96 }; 97 namespace pov_base { 98 class TextStreamBuffer { 99 }; 100 } 101 namespace pov_frontend { 102 using namespace pov_base; 103 class MessageOutput : public POVMS_MessageReceiver { 104 }; 105 class DefaultPlatformBase : public PlatformBase { 106 }; 107 } 108 using namespace pov; 109 namespace pov { 110 int pre_init_flag = 0; 111 } 112 POVMSContext POVMS_Render_Context = __null; main(int argc,char ** argv)113 int main(int argc, char **argv) { 114 } povray_init()115 void povray_init() { 116 if (pre_init_flag == 0) { 117 int err; 118 err = POVMS_OpenContext(&POVMS_Render_Context); 119 } 120 } 121