[Bug 244374] Review Request: xulrunner - XUL Runner

bugzilla at redhat.com bugzilla at redhat.com
Fri Jun 22 05:11:24 UTC 2007


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug report.

Summary: Review Request: xulrunner - XUL Runner


https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=244374





------- Additional Comments From panemade at gmail.com  2007-06-22 01:11 EST -------
The above is familiar problem for me as I am already working on Firefox 3, I saw
same error in Firefox 3 build also. If we use --enable-system-nspr then though
we are using latest released nspr rpm on our Fedora but this new xulrunner and
firefox 3 code have mozilla/xpcom/ds/nsExpirationTracker.h header file that uses
PR_STATIC_ASSERT() which is not present in our /usr/include/nspr4/prerror.h but
if we check xulrunner code then we can find same.
following is patch that shows difference.
===============================================================================

diff -urN /usr/include/nspr4/prerror.h
/usr/src/redhat/SOURCES/mozilla/nsprpub/pr/include/prerror.h
--- /usr/include/nspr4/prerror.h        2004-04-25 20:30:47.000000000 +0530
+++ /usr/src/redhat/SOURCES/mozilla/nsprpub/pr/include/prerror.h       
2007-04-02 14:38:49.000000000 +0530
@@ -49,6 +49,21 @@
 #include "prerr.h"
 
 /*
+** Compile-time assert. "condition" must be a constant expression.
+** The macro should be used only once per source line in places where
+** a "typedef" declaration is allowed.
+** For stringification of the line numbers where the macro is used we need some
+** macro indirection. IMPL is required to get macro-expansion of __LINE__ to
+** its integer value so that IMPL2 will stringify the number, not "__LINE__".
+*/
+#define PR_STATIC_ASSERT(condition)                                           \
+    PR_STATIC_ASSERT_IMPL(condition, __LINE__)
+#define PR_STATIC_ASSERT_IMPL(condition, line)                                \
+    PR_STATIC_ASSERT_IMPL2(condition, line)
+#define PR_STATIC_ASSERT_IMPL2(condition, line)                               \
+    typedef int pr_static_assert_line_##line[(condition) ? 1 : -1]
+
+/*
 ** Set error will preserve an error condition within a thread context.
 ** The values stored are the NSPR (platform independent) translation of
 ** the error. Also, if available, the platform specific oserror is stored.
===============================================================================

Additional Info:-
Caillon,
   However for Firefox 3 you will find PR_STATIC_ASSERT() under
 mozilla/nsprpub/pr/include/prlog.h


-- 
Configure bugmail: https://bugzilla.redhat.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.




More information about the Fedora-package-review mailing list