Closed Bug 691394 Opened 15 years ago Closed 14 years ago

Implement overloads in idl

Categories

(Core :: XPCOM, defect)

defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: bzbarsky, Unassigned)

References

Details

OS: Mac OS X → All
Hardware: x86 → All
Version: unspecified → Trunk
So, assuming we don't want to invent our own mangling scheme, it seems like the VC++ reordering of vtable overloads makes this unfeasible to do in XPConnect. Should we wait for the new DOM bindings?
It shouldn't be a problem to use different names in C++, e.g. OverloadedMethod1 OverloadedMethod2 etc... Similar to [binaryname] already, although presumably automatic.
Yeah, we could do. Alternatively, I presume whatever reordering it does do is not completely insane. We could try to determine what the compiler does and match it in typelib generation. What I've found on the Internet suggests that the compiler just groups all of the overloads together, which isn't that bad (in fact, that's how I think we should write our IDL).
http://support.microsoft.com/kb/131104 seems to explain what it does, and it's only about 50% insane.
Realistically, I don't think this is likely to get done early enough to make it worth doing before we switch over to the new DOM bindings. Once we have a better idea of what they'll look like, we can decide how best to support this. Unassigning for now.
Assignee: bobbyholley+bmo → nobody
We might need syntax-level support for this as a prereq to the DOM bindings work.
(In reply to Boris Zbarsky (:bz) from comment #6) > We might need syntax-level support for this as a prereq to the DOM bindings > work. My understanding was that we hadn't yet determined whether we're going to use XPIDL or a new WebIDL compiler for the new DOM stuff. Is that correct, or am I missing something?
In the end, we're going to use something that takes WebIDL as input and outputs both C++ headers and whatever binding stuff we need, no?
(In reply to Boris Zbarsky (:bz) from comment #8) > In the end, we're going to use something that takes WebIDL as input and > outputs both C++ headers and whatever binding stuff we need, no? Right. And since WebIDL != XPIDL, building syntax-level support for overloads into XPIDL isn't necessarily what we want.
I think we're going to drop a WebIDL parser into the tree, distinct from the XPIDL stuff.
Our WebIDL binding support this. XPCOM will continue to live in the dark ages.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.