--- mozilla-release.ORIG/xpcom/glue/nsTextFormatter.cpp 2009-07-30 09:30:35.000000000 -0600 +++ mozilla-release/xpcom/glue/nsTextFormatter.cpp 2010-03-24 15:48:24.000000000 -0600 @@ -70,7 +70,10 @@ ** Note: on some platforms va_list is defined as an array, ** and requires array notation. */ - +#if defined(__powerpc__) +#define HAVE_VA_LIST_AS_ARRAY +#endif + #ifdef HAVE_VA_COPY #define VARARGS_ASSIGN(foo, bar) VA_COPY(foo,bar) #elif defined(HAVE_VA_LIST_AS_ARRAY) diff -ur mozilla-release.ORIG/js/src/jsapi.cpp mozilla-release/js/src/jsapi.cpp --- mozilla-release.ORIG/js/src/jsapi.cpp 2012-02-15 23:40:35.000000000 -0700 +++ mozilla-release/js/src/jsapi.cpp 2012-03-01 17:01:41.716770994 -0700 @@ -108,6 +108,10 @@ #include "jsxml.h" #endif +#if defined(__powerpc__) +#define HAVE_VA_LIST_AS_ARRAY +#endif + using namespace js; using namespace js::gc; using namespace js::types; diff -ur mozilla-release.ORIG/js/src/jsprf.cpp mozilla-release/js/src/jsprf.cpp --- mozilla-release.ORIG/js/src/jsprf.cpp 2012-02-15 23:40:35.000000000 -0700 +++ mozilla-release/js/src/jsprf.cpp 2012-03-01 17:01:41.348769842 -0700 @@ -57,6 +57,10 @@ ** Note: on some platforms va_list is defined as an array, ** and requires array notation. */ +#if defined(__powerpc__) +#define HAVE_VA_LIST_AS_ARRAY +#endif + #ifdef HAVE_VA_COPY #define VARARGS_ASSIGN(foo, bar) VA_COPY(foo,bar) #elif defined(HAVE_VA_LIST_AS_ARRAY)