Commit Graph

80 Commits

Author SHA1 Message Date
L. David Baron
dfb9ad9186 Bug 976350 patch 1: Move the contents of nsTraceRefcnt.h into nsISupportsImpl.h. r=bsmedberg
This makes sense since the file no longer contains anything with the
nsTraceRefcnt name in it, and it will allow renaming nsTraceRefcntImpl
back to nsTraceRefcnt.
2014-02-26 13:36:35 -08:00
Ehsan Akhgari
fe19ed8113 Bug 935778 - Part 1: Add RefCountType, a type compatible with nsrefcnt, to MFBT; r=dbaron,froydnj 2014-02-21 14:45:50 -05:00
Ehsan Akhgari
82ebdc883f Bug 969757 - Remove the dead code in our tree which pretends to support OS/2; r=roc,mcmanus,gps,jorendorf,bsmedberg sr=bsmedberg 2014-02-10 17:57:01 -05:00
Jeff Walden
12220c1619 Bug 953296 - Implement mozilla::NullptrT as a typedef to use to accept nullptr values. Also add mozilla::IsNullPointer<T>, a trait for detecting *only* true nullptr (emulated nullptr [__null] used by gcc 4.4/4.5 isn't true nullptr). r=ehsan
Generally, if you want a decltype(nullptr)-based overload, you should use SFINAE and IsNullPointer.  (Examples are provided in NullPtr.h comments.)  The problem is NullptrT matches far more than just __null as emulated nullptr for gcc 4.4/4.5 overloading purposes.  This problem is unavoidable without true nullptr.  Currently, the only valid use for NullptrT is believed to be in operator overloads.  All existing nullptr-overloading code has been rewritten to use the appropriate technique for the situation, and MOZ_HAVE_CXX11_NULLPTR is no longer an API.

--HG--
extra : rebase_source : 01abfcb66ae569db7b04a7b53f5cd5fd8151bffd
2014-01-02 17:27:41 -06:00
Daniel Holbert
17bbc689ce Bug 926275: Remove mozalloc_macro_wrappers.h and mozalloc_undef_macro_wrappers.h. r=bsmedberg 2013-10-31 19:39:03 -07:00
Ehsan Akhgari
9bf1bff8b4 Bug 895047 - Make char16_t available everywhere and use that to define PRUnichar and jschar; r=jcranmer,jorendorff,glandium 2013-10-17 00:36:13 -04:00
Phil Ringnalda
214fbe3acd Back out ee100983f921 (bug 895047) for build bustage
CLOSED TREE
2013-10-16 21:51:55 -07:00
Ehsan Akhgari
6f865c67f5 Bug 895047 - Make char16_t available everywhere and use that to define PRUnichar and jschar; r=jcranmer,jorendorff,glandium 2013-10-17 00:36:13 -04:00
Joshua Cranmer
0706184d74 Bug 904985, part 2: Use char16_t for NS_LITERAL_STRING, r=glandium, dbaron.
--HG--
extra : rebase_source : b4c9def93d907724fb4a1bc3f6279db87a11fb1f
2013-09-17 22:43:12 -05:00
Ehsan Akhgari
3717325909 Bug 872127 - Part 2: Replace mozilla/StandardInteger.h with stdint.h; r=Waldo,ted 2013-07-30 10:25:31 -04:00
Mike Hommey
b8179e1af6 Bug 895083 - Set NS_STDCALL to nothing on WIN64. r=ehsan 2013-07-21 13:59:05 +09:00
Ehsan Akhgari
f7dde9fff6 Bug 895083 - Don't #define NS_HAVE_STDCALL on Win64 because __stdcall will just get ignored there by the compiler. r=vlad 2013-07-18 10:17:13 -04:00
Benoit Girard
82435a9c18 Bug 838803 - Remove HAVE_STDCALL to work around clang bug. r=glandium
--HG--
extra : rebase_source : e1cdb524a4f7f0742f2051e5915e5e21db4c0423
2013-07-16 22:01:50 -04:00
Benoit Girard
103cc87697 Bug 892861 - Remove useless -D flags 'IMPL_THEBES,_IMPL_NS_GFX,...'. r=glandium 2013-07-12 08:56:54 -04:00
Catalin Iacob
83b78343dc Bug 798914 (part 5) - Use newly introduced mozilla::MallocSizeOf instead of nsMallocSizeOfFun. r=njn.
--HG--
extra : rebase_source : fc472490dd978d165f02f77ed37f07aed6e5bb61
2013-06-23 14:03:39 +02:00
Joshua Cranmer
6d56f24db4 Bug 856108 - Port static analyses to clang, part 3: Remove NS_STACK_CLASS. r=bsmedberg 2013-04-11 22:22:44 -05:00
Joshua Cranmer
c992967d69 Bug 767563 - Add a clang static checker, part 3: Move the MOZ_MUST_OVERRIDE macro to MFBT. r=Waldo 2013-03-23 21:14:43 -05:00
Jeff Walden
947e80c984 Bug 836438 - Always implement nsresult using an unsigned 32-bit integer type. r=ehsan
--HG--
extra : rebase_source : f9d9d7772decee36a27ef09eb018b9912bf7bf6b
2013-01-30 15:32:44 -08:00
Trevor Saunders
6380733341 bug 822717 - remove checks for old gcc r=glandium 2012-12-18 13:22:28 -05:00
Jacek Szpot
bea8356b2c Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Aryeh Gregor
0dbcfefe35 Bug 777292 - Make nsresult an enum; r=ehsan,cjones,bsmedberg 2012-08-07 11:27:45 +03:00
Jeff Muizelaar
00587c07b1 Bug 782647. Move the nullptr workaround macros to MFBT so that it can be shared. r=waldo
This also changes the header to use compiler detection instead of a
configure test. This makes the header more portable because
it doesn't require the configure infrastructure.
2012-09-01 16:16:17 -04:00
Ehsan Akhgari
59fbcc9b3c Bug 788014 - Part 2: Reduce the inclusion of prtypes.h in the tree to help using stdint types; r=jrmuizel
--HG--
extra : rebase_source : 66b3b6b9858fb032bebcc070347f781bdf61770c
2012-09-06 17:54:59 -04:00
Ehsan Akhgari
6f8adb0586 Bug 788014 - Part 1: Define nsrefcnt to be unsigned long unconditionally on Windows; r=jrmuizel
On Windows, IUknown::AddRef and IUnknown::Release are defined to
return ULONG, which is defined as unsigned long.  The existing
code relies on the PR_BYTES_PER_LONG macro which is #defined in
prtypes.h to always be 4 on Windows.  If we remove the prtypes.h
inclusion from nscore.h, in the places where prtypes.h is not
included by other things, we will fall into the other path in the
#ifdef condition which defines nsrefcnt to be unsigned int, which
causes the signature of AddRef and Release to change, which
results in linker errors.

There are a couple of reasons why this change is correct:

1. On both Win32 and Win64, the size of the long type is 4 bytes,
always.  And prtypes.h doesn't detect the size of longs, it just
assumes it, so this check is really a tautology.
2. If the size of the long type changes on Windows, sometime,
the return value of AddRef and Release on Windows should change
size as well in order to maintain binary compatibility with
IUnknown, and before this change, the code would fail to hold
that promise.

--HG--
extra : rebase_source : 8333582b494aaca17c91cf35287a084083219050
2012-09-07 15:09:01 -04:00
Ehsan Akhgari
8c296bbcd4 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Aryeh Gregor
e2dd9c2028 Bug 626472 part 3 - Remove nsnull for good; r=ehsan 2012-08-12 13:43:47 +03:00
Chris Peterson
9cadd9aabc Bug 777511 - #define nullptr __null for gcc <= 4.5. r=ehsan
--HG--
extra : rebase_source : dd24e15d4b271d7ae1f604b6d7e4d0e76f614f40
2012-07-26 15:29:18 -07:00
Joshua Cranmer
de30491499 Bug 773637 - Kill NS_SCRIPTABLE attributes, Part 2: Remove NS_SCRIPTABLE. r=ehsan
--HG--
extra : rebase_source : 83020e0a1961ed5b33d5e0599419c6b7b82caa87
2012-07-06 15:31:49 -05:00
Joshua Cranmer
e1cdfe2f05 Bug 773637 - Kill NS_SCRIPTABLE annotations, Part 1: Remove NS_*PARAM annotations. r=ehsan
--HG--
extra : rebase_source : a0b4bc50fece36d9a90fed61431635948bfa33b5
2012-07-06 15:14:07 -05:00
Joshua Cranmer
4a5b32fae2 Bug 702877 - Replace NS_OVERRIDE with MOZ_OVERRIDE. r=ehsan
--HG--
extra : rebase_source : 1843575683c3897f96f3966cbce26140ff1a7d90
2012-07-06 13:15:45 -05:00
Aryeh Gregor
0c8f5adf50 Bug 626472 part 1 - Define nsnull as nullptr where available; r=ehsan 2012-07-20 14:16:17 +03:00
Jeff Muizelaar
eb40f02be7 Bug 771317. Fix comment about FASTCALL and inline functions. r=espindola
Calling convention does not make a difference on functions that are inlined,
but that feels obvious because no call is being made. Inline functions are not
necessarily inlined so this comment is somewhat misleading.

--HG--
extra : rebase_source : f634f18d1a6669147f53162a7bc0ab08b145cc43
2012-07-05 17:38:30 -04:00
Gervase Markham
87620f5676 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Mark Capella
1839be84c0 Bug 740688 - Use uintptr_t instead of PRUword, and intptr_t instead of PRWord. r=jwalden
--HG--
extra : rebase_source : 648a581323d2c2893df780f71fe34dadcc4bbaab
2012-04-11 17:17:44 -07:00
Nicholas Nethercote
dd32d38d63 Bug 715453 - Remove computedSize from nsMallocSizeOfFun. r=jlebar,bhackett.
--HG--
extra : rebase_source : a65039a407daab45360a5b375b53cbf1bc05b7f6
2012-01-25 00:52:51 -08:00
Makoto Kato
2f13a54acb Bug 715045 - Remove old vc support code. r=jimm 2012-01-05 16:52:22 +09:00
Makoto Kato
33673fb525 Bug 712198 - Remove NS_WIN32, NS_UNIX and NS_OS2. r=khuey 2011-12-21 14:09:17 +09:00
Andrew Quartey
e51c16190c Bug 706010 - Remove NS_SPECIALIZE_TEMPLATE and HAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX; r=khuey a=cleanup/removal 2011-12-13 14:17:59 +00:00
Jeff Walden
c1ec82addd Bug 707352 - Remove NS_FINAL_CLASS completely. r=cjones 2011-12-05 17:10:05 -05:00
Nicholas Nethercote
f1e77095c2 Bug 698968 - Add mallocSizeOf functions and start using them. r=jlebar,bhackett,jfkthame, sr=bz. 2011-11-27 19:03:14 -08:00
Jonathan Watt
71a67640b1 Bug 695303 - Add a mozilla::clamped function to replace NS_CLAMP (so side affects of args are evaluated no more than once) and NS_MIN(max, NS_MAX(val, min)) (to make code clearer). r=bsmedberg. 2011-10-28 19:33:28 +01:00
Ehsan Akhgari
2a602a5685 Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Rafael Ávila de Espíndola
4387485520 Bug 682066 - Drop NS_DEFCALL. r=benjamin.
Having NS_DEFCALL around causes problems for clang since it uses
the regpart attribute when deciding template instantiations. In
particular, it would not use the generic method specialization of
nsRunnableMethodTraits.
2011-08-30 14:22:00 -04:00
Matheus Kerschbaum
b9a52be4e0 Bug 680625 part 0: Remove checks and workarounds for 20th century compilers. r=ted 2011-08-26 00:35:13 +01:00
Matheus Kerschbaum
887ff1b97a Bug 678155 - Remove NS_COM. r=bsmedberg 2011-08-18 15:46:39 +02:00
Jesse Ruderman
a3638a85b4 Bug 659825 - Rename NS_DEPRECATED to MOZ_DEPRECATED to avoid conflict with Mac 10.7 SDK. r=jcranmer sr=bsmedberg 2011-06-08 09:34:02 +02:00
Matheus Kerschbaum
35f86c76ad Bug 648911 - Remove support for non-libxul builds. r=ted,joedrew 2011-05-23 18:54:47 +02:00
Jacek Caban
c980e050a6 Bug 614631 - Macros for SEH exception depending on compiler configuration r+a=benjamin 2011-01-11 10:16:59 +00:00
Walter Meinl
48d1e8997b Bug 577011 - [OS/2] make _declspec unconditionally default symbol export r=daveryeo@telus.net a=benjamin
--HG--
extra : rebase_source : f73a926174bd7905f177b2e914492e42b90ac8c0
2010-11-09 11:13:03 +01:00
Saint Wesonga
da57f5da8c Bug 581479 - Convert C++ style comment. r=benjamin, a=comment-only 2010-08-08 17:06:35 +02:00