Mike Hommey
f7136d7140
Bug 1189967 - Avoid including <string> from Char16.h. r=nfroyd
...
Since Char16.h is included everywhere, and MSVC 2015 uses the char16ptr_t trick
it contains, we include <string> everywhere, but that has the side effect of
breaking the build in subtle ways. One way around this would be to avoid including
Char16.h in the first place, but that requires more work than I was ready to put
in. So instead, just avoid including <string> by removing the conversion operator
for std::wstring.
2015-08-23 22:20:33 +09:00
Xidorn Quan
5adb6365fb
Bug 1189655 - Define MOZ_HAVE_CXX11_CONSTEXPR on VS2015 or later. r=Waldo
2015-08-21 09:17:18 +10:00
Nathan Froyd
c28a033917
Bug 1196451 - tweak comment in nsRefPtr.h to be more clear; r=botond
...
DONTBUILD because this is a comment-only fix.
2015-08-20 00:59:28 -04:00
Xidorn Quan
ca8cc2b99d
Bug 1195154 - Replace operator overloads for comparing nsRefPtr to 0 with those for comparing to nullptr. r=froydnj
2015-08-19 11:06:05 -07:00
Nigel Babu
8bf261cdcc
Backed out changeset 20c6f74296e2 (bug 1195154) for causing Bug 1196115
2015-08-19 20:43:11 +05:30
Xidorn Quan
e280f7ca3c
Bug 1195154 - Replace operator overloads for comparing nsRefPtr to 0 with those for comparing to nullptr. r=froydnj
2015-08-19 09:09:08 +10:00
Michael Layzell
8b08edab66
Bug 1192130 - Part 2: Use MOZ_NON_AUTOABLE to validate the usage of already_AddRefed, r=ehsan
2015-08-14 17:33:54 -04:00
Aryeh Gregor
c352c94520
Bug 1193298 - Part 3: Delete RefPtr<T>::operator T*()&&. r=froydnj
...
I put MOZ_HAVE_REF_QUALIFIERS in Attributes.h for lack of a better
place. I didn't especially want to make a whole new file for it.
To make the tree compile, support for moving RefPtr to nsRefPtr was
needed. I chose to put the definitions in RefPtr.h instead of
nsRefPtr.h because RefPtr.h looks to be included in fewer files, so I
preferred to bloat fewer files with the extra include.
For some reason operator!() wasn't necessary here, although it seems it
is for nsRefPtr.
2015-08-11 06:45:00 -04:00
Aryeh Gregor
f382bc9200
Bug 1179451 - Part 5: Delete nsRefPtr<T>::operator T*()&&. r=froydnj
2015-08-13 15:22:48 +03:00
Nathan Froyd
349b3d497a
Bug 1193005 - delete unused function nsRefPtr::begin_assignment; r=erahm
...
We don't use it; the getter_AddRefs overload for nsRefPtr uses
StartAssignment, which is the same thing.
2015-08-11 00:23:33 -04:00
Michael Layzell
32ec5dc140
Bug 885515 - Part 2: Add MOZ_HEAP_CLASS to mfbt, r=ehsan
2015-08-09 12:42:11 -04:00
Nick Fitzgerald
e8b315de6c
Bug 1186693 - Add exhaustive matching to mozilla::Variant; r=Waldo
2015-08-08 16:43:35 -07:00
Nathan Froyd
7188e1bbca
Bug 1189894 - remove Atomics.h IntrinsicAddSub hack; r=erahm
...
This hack was only required for broken headers in GCC 4.6. Since we
only support GCC 4.7+ now, this hack is no longer necessary.
2015-07-31 22:25:21 -04:00
Botond Ballo
4a77fdbb9e
Bug 1056356 - Add support for nsRefPtr<const T>. r=froydnj
2015-08-05 13:52:06 -04:00
Aryeh Gregor
a3c0771347
Bug 1190823 - Move OwningNonNull.h to xpcom/base/; r=froydnj
2015-08-05 15:28:27 +03:00
Makoto Kato
4b306660cb
Bug 1190313 - Set MOZ_HAVE_EXPLICIT_CONVERSION on VS2015. r=nfroyd
2015-08-05 17:14:42 +09:00
James Cheng
93eb81cff3
Bug 1189231 - Refine operator() call with perfect forwarding. r=nfroyd
2015-07-30 21:16:00 -04:00
Michael Layzell
d070709c54
Bug 1187073 - Use MOZ_INHERIT_TYPE_ANNOTATIONS_FROM_TEMPLATE_ARGS to validate the usage of AlignedStorage2. r=ehsan
2015-07-31 13:59:00 -04:00
Muhsin Ali Steiman
e399be8e28
Bug 1188895 - Replace U+0A00 with U+0200 in MacroForEach.h. r=Ms2ger
2015-08-01 00:36:00 -04:00
James Cheng
1e66e2028a
Bug 975246 - Part1 - Implement operator->* in nsRefPtr. r=nfroyd, r=gerald
2015-07-29 19:47:00 +02:00
Bobby Holley
106e778c81
Bug 1188696 - Hoist nsRefPtr.h into MFBT. r=froydnj
2015-07-29 10:44:59 -07:00
Ehsan Akhgari
28032343dd
Bug 1188204 - Fix more constructors in MFBT; r=froydnj
2015-07-28 12:24:39 -04:00
Oliver Henshaw
f0a68f98ca
Bug 1186126 - Note incompatibility with NSPR printf-like functions. r=nfroyd
...
printf-like functions
2015-07-27 10:08:00 +02:00
Liang-Heng Chen
4acd801361
Bug 1185706 - support Tie() for mozilla::Pair. r=froydnj
2015-07-24 00:42:00 +02:00
Ehsan Akhgari
80e818c7ad
Bug 1159433 - Part 2: Add the MOZ_NON_MEMMOVABLE and MOZ_NEEDS_MEMMOVABLE_TYPE macros to MFBT; r=froydnj
2015-07-24 19:15:18 -04:00
Michael Layzell
8b87634b54
Bug 1123907 - Part 2: Add MOZ_NEEDS_NO_VTABLE_TYPE to Attributes.h, and use it to verify the EntryType argument of nsTHashtable; r=ehsan
2015-07-24 19:14:09 -04:00
Nick Fitzgerald
b617878aef
Bug 1186650 - Do not mark mozilla::Variant copy and move constructors as explicit. r=Waldo
2015-07-22 14:49:00 -04:00
Liang-Heng Chen
db840bd7a1
Bug 1186315 - Fix TestTuple error and add it into testing list. r=nfroyd
2015-07-21 22:54:00 +02:00
Makoto Kato
5b5ffe9631
Bug 1007050 - Remove std::isinf workaround for MSVS. r=Waldo
2015-07-23 14:52:29 +09:00
David Major
486abe85e1
Bug 1185686: Fix Atomics.h ifdefs for clang-cl. r=froydnj
2015-07-20 17:04:46 -04:00
Botond Ballo
e81bbdf989
Bug 1184385 - Add a Tie() utility function for tuples (the equivalent of std::tie()) to MFBT. r=froydnj
2015-07-18 03:48:39 -04:00
Nick Fitzgerald
74215e3709
Bug 1184235 - Add mozilla::Vector::emplaceBack; r=froydnj
2015-07-20 11:13:28 -07:00
Nick Fitzgerald
23b2dd138f
Bug 1184839 - Provide an overloaded == operator for mozilla::Variant; r=Waldo
2015-07-19 16:32:00 +02:00
Jeff Gilbert
75a1ce4070
Bug 1182370 - _BitScan* does not modify *pIndex
if input is zero. - r=waldo
2015-07-17 10:24:30 -07:00
Jeff Gilbert
39d3e5cddc
Bug 1177887 - Deref *after* changing the value held by RefPtr. - r=waldo
2015-07-16 17:15:44 -07:00
Benoit Girard
2e648924e7
Bug 1182516 - Add Chaos Mode environment variable MOZ_CHAOSMODE. r=roc
2015-07-14 17:29:23 -04:00
Birunthan Mohanathas
e52329c788
Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
...
The bulk of this commit was generated by running:
run-clang-tidy.py \
-checks='-*,llvm-namespace-comment' \
-header-filter=^/.../mozilla-central/.* \
-fix
2015-07-13 08:25:42 -07:00
Michael Layzell
1a947e7297
Bug 1180993 - Part 2: Add the MOZ_MUST_USE attribute to mfbt, and use it to verify usage of already_AddRefed. r=ehsan
2015-07-06 21:42:00 -04:00
Steve Fink
7eba9889ce
Bug 1180299 - Implement ScopeExit for running actions at the end of a scope, r=Waldo
2015-07-03 14:20:55 -07:00
Xidorn Quan
1e6359f6d7
Bug 1175485 part 4 - Add unit test for integer range. r=waldo
2015-07-02 13:31:07 +10:00
Xidorn Quan
35b2239278
Bug 1175485 part 3 - Remove unused operators, typedefs and IteratorTraits. r=waldo
2015-07-02 13:31:07 +10:00
Xidorn Quan
3f14e188e0
Bug 1175485 part 2 - Add static_assert to MakeRange to ensure it is used with integers. r=waldo
2015-07-02 13:31:07 +10:00
Xidorn Quan
2884d76b1c
Bug 1175485 part 1 - Allow inner iterator of ReverseIterator deref to any type, and change IntegerIterator, EnumeratedRange, and nsFrameList::Iterator to return value type instead of a reference. r=roc,waldo
2015-07-02 13:31:07 +10:00
Nathan Froyd
51fdfa32f5
Bug 1161627 - part 3 - remove TemporaryRef<T> from RefPtr.h; r=ehsan
2015-05-05 13:22:12 -04:00
Nathan Froyd
46d6f38e68
Bug 1161627 - part 2 - machine-convert TemporaryRef<T> to already_AddRefed<T>; r=ehsan
...
This conversion was done with the script:
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl' | \
egrep -v 'cairo-win32-refptr.h|RefPtr.h|TestRefPtr.cpp' | \
xargs sed -i -e 's/mozilla::TemporaryRef</already_AddRefed</g' \
-e 's/TemporaryRef</already_AddRefed</g'
Manual fixups were performed in the following instances:
- We handled mfbt/RefPtr.h manually so as to not convert TemporaryRef itself
into already_AddRefed.
- The following files had explicit Move() calls added to make up for the lack
of a copy constructor on already_AddRefed:
dom/base/ImageEncoder.cpp
dom/media/MediaTaskQueue.{h,cpp}
dom/media/webaudio/PannerNode.cpp
- A redundant overload for MediaTaskQueue::Dispatch was deleted.
- A few manual fixups were required in mfbt/tests/TestRefPtr.cpp.
- Comments, using declarations, and forward declarations relating to
TemporaryRef in dom/canvas/ and gfx/layers/ were changed to refer to
already_AddRefed.
2015-06-17 10:00:52 -04:00
Nick Fitzgerald
8583ece95d
Bug 1174906 - Add a mozilla::Variant<T1, T2, ...> template class; r=Waldo
2015-06-30 10:01:00 -07:00
Markus Stange
0528311764
Bug 1165185 - Try to avoid invalidations when scrolling transformed elements. r=roc
2015-06-15 19:20:59 -04:00
Nicholas Nethercote
9d4dcf615a
Bug 1174046 - Fix PLDHashTable::Iterator in chaos mode again. r=froydnj, a=philor
...
CLOSED TREE
If you use PLDHashTable::Iterator in chaos mode with a table with zero
capacity, a |% 0| operation takes place in randomUint32LessThan. This change
avoids that.
2015-06-11 18:23:26 -07:00
Nathan Froyd
3d34ab1a0b
Bug 1161627 - part 1 - add move constructor and assignment operator for already_AddRefed&& to RefPtr; r=ehsan
...
This change is prep work for future mass rewriting.
2015-05-05 13:02:21 -04:00
Kartikaya Gupta
1b00006d7a
Bug 1164218 - Allow running individual mochitests and reftests in chaos mode. r=roc,froydnj
2015-06-04 13:44:55 -04:00