Invention Grant
- Patent Title: Error-code and exception-based function dispatch tables
- Patent Title (中): 错误代码和基于异常的函数调度表
-
Application No.: US13596303Application Date: 2012-08-28
-
Publication No.: US08935686B2Publication Date: 2015-01-13
- Inventor: Deon Brewis , James Springfield , Sridhar S. Madhugiri
- Applicant: Deon Brewis , James Springfield , Sridhar S. Madhugiri
- Applicant Address: US WA Redmond
- Assignee: Microsoft Corporation
- Current Assignee: Microsoft Corporation
- Current Assignee Address: US WA Redmond
- Agent Kevin Sullivan; Kate Drakos; Micky Minhas
- Main IPC: G06F9/45
- IPC: G06F9/45

Abstract:
A condition detected by a virtual routine may be treated by setting an error code or raising an exception, depending on circumstances. Enhanced vtable layouts promote availability of both error-ID-based and exception-based virtual routines, while maintaining compatibility. Compilers treat virtual routines based on their circumstances. One enhanced vtable includes error-ID-based routine pointers in a COM-layout-compatible portion and exception-based routine pointers in an extension. For a virtual routine not overridden by a derived class, a compiler generates a direct call. For an object instance of a specific type, the compiler generates a direct exception-based call for the object's routine. For a factory-sourced object's routine, the compiler generates a virtual exception-based call. When the virtual routine belongs to a component having an enhanced vtable, the compiler may generate a virtual call using the exception-based routine pointer. Code wrappers between COM and native format may also be used.
Public/Granted literature
- US20140068573A1 Error-code and exception-based function dispatch tables Public/Granted day:2014-03-06
Information query