]> git.buserror.net Git - polintos/scott/priv.git/blobdiff - idl/exceptions.idl
Add first draft of marshalling spec
[polintos/scott/priv.git] / idl / exceptions.idl
index 17225bddd994be4565f16dca79b92fd681717b14..f32e597d4c7fee4302e040888ab9b6f62af7148e 100644 (file)
@@ -88,8 +88,8 @@ struct MemoryFault : SystemException {
        // Address that the method tried to access
        ulong addr;             
 
-       // Address of the faulting instruction
-       ulong pc;               
+       // Address of the faulting instruction, 0 if from kernel
+       ulong pc;
 
        // Process of faulting method
        Proc.Process proc;
@@ -117,7 +117,7 @@ struct MemoryFault : SystemException {
                
                // An I/O error occured accessing a memory mapped region, or an
                // uncorrectable memory error was encountered.
-               IOError         
+               IOError,
        };
 };
 
@@ -287,3 +287,13 @@ struct InvalidReference : SystemException {
                    // When not thrown by the ORB, this is a free form
                    // explanation field (and may be NULL).
 };
+
+// Thrown when more references are attempted to be dropped than exist.
+// "refs" is the number of references, and "released" is the number
+// of releases asked for.
+
+struct RefCountException : SystemException {
+       guid: "1EEDC277-9D71-415E-AA8D-19C52FDB72F2";
+       
+       int refs, released;
+};