author Benjamin Smedberg <>
Mon, 12 Jan 2009 14:20:59 -0500
changeset 23554 61ca5667346845391496df48802cb4a83a8f87e0
parent 18461 c397279747fa966ebedd9806d691c7aeede5cbe3
child 24067 982a011f6b3f444b02f04720fcf342cb7ac6defe
permissions -rw-r--r--
Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports: * we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID) * eliminate all vestiges of refcounting, since frames aren't refcounted Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back. r+sr=roc nsITextControlFrame didn't have an IID the first time around, but this wasn't a compile error because nsITextControlFrame::kFrameIID inherited from nsIFormControlFrame::kFrameIID. I've added a static analysis pass to verify the correct behavior, since I can't figure out a way to make the compiler do it.

dnl Local autoconf macros used with mozilla
dnl The contents of this file are under the Public Domain.

builtin(include, build/autoconf/glib.m4)dnl
builtin(include, build/autoconf/gtk.m4)dnl
builtin(include, build/autoconf/libIDL.m4)dnl
builtin(include, build/autoconf/libIDL-2.m4)dnl
builtin(include, build/autoconf/nspr.m4)dnl
builtin(include, build/autoconf/nss.m4)dnl
builtin(include, build/autoconf/libart.m4)dnl
builtin(include, build/autoconf/pkg.m4)dnl
builtin(include, build/autoconf/freetype2.m4)dnl
builtin(include, build/autoconf/codeset.m4)dnl
builtin(include, build/autoconf/altoptions.m4)dnl

# Read the user's .mozconfig script.  We can't do this in
# autoconf puts the argument parsing code above anything
# expanded from, and we need to get the configure options
# from .mozconfig in place before that argument parsing code.