]> git.buserror.net Git - polintos/scott/priv.git/blobdiff - include/c++/orb.h
Lots of stuff.
[polintos/scott/priv.git] / include / c++ / orb.h
index cba58491b4bc24ba02c52c58adbfee6ec22491b5..87bcd246ca713ed6f024bc948144517d6a9be8ed 100644 (file)
@@ -283,16 +283,15 @@ namespace System {
                
                struct ParamInfoBlock {
                        uintptr_t buffer_size;
-                       void **objlist_ptr;
+                       uintptr_t *objlist_ptr;
                        uintptr_t objlist_len;
-                       void **ptrlist_ptr;
-                       uintptr_t ptrlist_len;
                        uintptr_t num_segments;
 
                        struct Segment {
                                void *ptr;
                                uintptr_t len;
                                uintptr_t flags;
+                               uintptr_t reserved;
                        } segments[0];
                };
        }
@@ -317,6 +316,9 @@ inline void *operator new[](size_t len, ::System::RunTime::ORBMM *orbmm,
 //
 // To throw an IDL exception of type Foo, do this:
 // throw_idl(Foo, args, to, foo);
+//
+// FIXME: Instead, maybe a static throw method with noinline and
+// builtin_return_address.
 
 #ifndef POLINTOS_NO_THROW_IDL
 #define throw_idl(T, args...) do { \