Commit Graph

898 Commits

Author SHA1 Message Date
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
Michael Layzell
14e80467b9 Bug 1169337 - Clarify MOZ_{NON_,}OWNING_REF/MOZ_UNSAFE_REF documentation. r=froydnj 2015-06-01 14:44:00 -04:00
Milan Sreckovic
a5295afcda Bug 1131463 - Report AtomicRefCounterWithFinalize doing the wrong thing with AddRef and Release in release build as well. r=sotaro 2015-05-29 16:41:28 -04:00
Bobby Holley
4417102168 Bug 1168008 - Make IsConvertible handle void. r=gerald 2015-05-28 16:03:08 -07:00
Mike Hommey
2c863b9fe4 Bug 991983 - Define SOURCES as SourcePath. r=gps 2015-05-28 07:34:15 +09:00
Kartikaya Gupta
3cb1d2d0cc Bug 1160285 - Add a staticruntime version of mfbt and link some stuff against it. r=glandium 2015-05-27 17:22:29 -04:00
Botond Ballo
0fe06cffa0 Bug 1119980 - Use 'snprintf' instead of 'sprintf' to avoid a warning on Lollipop-based builds. r=froydnj 2015-05-26 14:33:55 -04:00
Phil Ringnalda
f3d4dd7e09 Back out 3 changesets (bug 1119980) for emulator-l bustage
CLOSED TREE

Backed out changeset 12ce98475c6e (bug 1119980)
Backed out changeset bdb8d05f8870 (bug 1119980)
Backed out changeset a68a18840492 (bug 1119980)
2015-05-25 18:48:51 -07:00
Botond Ballo
9a8e8b29e8 Bug 1119980 - Use 'snprintf' instead of 'sprintf' to avoid a warning on Lollipop-based builds. r=froydnj 2015-05-25 20:45:17 -04:00
Cameron McCormack
59ffc9e720 Bug 1147766 - Part 1: Add a mozilla::RangedArray class, for fixed length arrays with a non-zero base index. r=waldo 2015-05-23 12:50:44 +10:00
Cameron McCormack
a996e7cdac Backed out changeset a6fa096f9853 and ec1c41143ff6 (bug 1147766) since I messed up the warning fix. 2015-05-23 15:51:14 +10:00
Cameron McCormack
f76dafa123 Bug 1147766 - Part 1: Add a mozilla::RangedArray class, for fixed length arrays with a non-zero base index. r=waldo 2015-05-23 12:50:44 +10:00
Phil Ringnalda
7a5f1ade1f Back out 2 changesets (bug 1147766) for -Werror bustage
CLOSED TREE

Backed out changeset 10d6fcd9a4e0 (bug 1147766)
Backed out changeset 5754455de846 (bug 1147766)
2015-05-22 20:24:08 -07:00
Cameron McCormack
f0087396a3 Bug 1147766 - Part 1: Add a mozilla::RangedArray class, for fixed length arrays with a non-zero base index. r=waldo 2015-05-23 12:50:44 +10:00
Botond Ballo
7ec8c57227 Bug 1163329 - Add a utility for expanding a tuple into a variadic argument list to MFBT. r=froydnj 2015-05-11 17:23:33 -04:00
Botond Ballo
c8d54a98aa Bug 1163328 - Tests for mozilla::Tuple. r=froydnj 2015-05-21 21:14:25 -04:00
Botond Ballo
bc08a1f31c Bug 1163328 - Add a Tuple class to MFBT. r=froydnj 2015-05-21 22:33:49 -04:00
Botond Ballo
790f8b5d45 Bug 1163328 - Add an And<...> class to TemplateLib.h which performs logical and on a variadic number of booleans known at compile time. r=froydnj 2015-05-21 22:33:39 -04:00
Nathan Froyd
f61c010661 Bug 1160485 - remove implicit conversion from RefPtr<T> to TemporaryRef<T>; r=ehsan
Having this implicit conversion means that we can silently do extra
refcounting when it's completely unnecessary.  It's also an obstacle to
making RefPtr more nsRefPtr-like, so let's get rid of it.
2015-05-01 09:14:16 -04:00
Nathan Froyd
6e617deb41 Bug 1116905 - part 4 - remove implicit conversion from non-nullptr T* to TemporaryRef<T>; r=ehsan 2015-04-30 15:21:05 -04:00
Nathan Froyd
3e410cfd9b Bug 1116905 - part 2 - add MakeAndAddRef helper function to facilitate constructing TemporaryRef; r=Ms2ger
With implicit conversion to TemporaryRef going away, one can no longer write:

  return new T(...);

in a function returning TemporaryRef<T>.  Instead, provide MakeAndAddRef
to prevent people from having to construct boilerplate RefPtrs or
similar.  It also makes converting from TemporaryRef to already_AddRefed
somewhat easier.
2015-04-30 15:19:49 -04:00
Nathan Froyd
c39128bbad Bug 1116905 - part 1 - remove dependence on implicit conversion from T* to TemporaryRef<T>, non-gfx changes; r=ehsan 2015-04-30 15:17:08 -04:00
Gerald Squelart
7ad6a88844 Bug 1153295 - Add mozilla::Declval. r=nfroyd 2015-04-27 18:11:00 -04:00
Gerald Squelart
bd71eec5c9 Bug 1153295 - Add mozilla::AddRvalueReference. r=nfroyd 2015-04-27 18:07:00 -04:00
Andrew McCreight
fb796b8e9b Bug 1113300 - Add a way to use SegmentedVector like a stack. r=froydnj 2015-05-07 09:11:00 +02:00
Shu-yu Guo
245b492878 Bug 1154115 - Rewrite profiler JSON streaming. (r=mstange) 2015-05-11 14:16:44 -07:00
Trevor Saunders
0ce61da842 no bug - fix -Wreturn-type warning on a CLOSED TREE 2015-05-06 11:12:46 -04:00
Trevor Saunders
46d0164fdd bug 606080 - add SplayTree::LookupOrAdd r=froydnj 2015-05-06 10:57:12 -04:00
Eric Rahm
4922445e33 Bug 1145056 - Assert that the guard notifier has been initialized. r=froydnj
In order to both verify that guard object notifiers are being properly used
and to silence a coverity warning about an explicit null dereference we
switch over to using a poison value rather than nullptr. An assertion is added
to make sure that the guard object notifier is properly initialized as well.
2015-04-21 16:47:52 -07:00
Andrew McCreight
8145d04124 Bug 1062479 - Use static strings for WeakReference type names. r=ehsan 2015-04-24 09:43:01 -07:00
Jim Blandy
cf24b249ee NO BUG: Remove incorrect comment about not being able to use variadic templates. DONTBUILD r=waldo 2015-04-23 16:48:19 -07:00
Jeff Walden
3886e5a7ec Bug 1140752 - Land code to self-host %TypedArray%.prototype.set, but don't enable it yet, pending perf-testing. This shouldn't make any changes to the build, except in terms of adding more code to it and affecting binary layout. r=jandem, also much feedback from till that effectively amounts to a review as well 2015-03-04 00:04:53 -08:00
Ehsan Akhgari
d278570d19 Bug 1153348 - Add an analysis to prohibit operator bools which aren't marked as either explicit or MOZ_IMPLICIT; r=jrmuizel
This is the counterpart to the existing analysis to catch
constructors which aren't marked as either explicit or
MOZ_IMPLICIT.
2015-04-21 21:40:49 -04:00
Wes Kocher
01d294be4b Backed out changeset 02e6a50741a9 (bug 1153348) to hopefully fix the static bustage CLOSED TREE 2015-04-21 15:47:40 -07:00
Ehsan Akhgari
74f43d26e8 Bug 1153348 - Add an analysis to prohibit operator bools which aren't marked as either explicit or MOZ_IMPLICIT; r=jrmuizel
This is the counterpart to the existing analysis to catch
constructors which aren't marked as either explicit or
MOZ_IMPLICIT.
2015-04-21 16:31:58 -04:00
Seth Fowler
f4877af3dc Bug 1155864 - Rip out Windows intrinsics from Atomics.h and allow Atomic to hold 64-bit types everywhere. r=Waldo 2015-04-17 18:40:52 -07:00
Jim Blandy
c49a3b9f79 Bug 1145051: Use MOZ_WARN_UNUSED_RESULT instead of NS_WARN_UNUSED_RESULT. r=glandium 2015-03-19 00:46:40 -07:00
Jim Blandy
207318c9b0 Bug 1145051: Replace uses of NS_ATTR_MALLOC with new MOZ_ALLOCATOR from mfbt/Attributes.h. r=glandium 2015-03-18 23:56:08 -07:00
Wes Kocher
387efa11c9 Backed out changeset 42ed856b37d9 (bug 1153382) to see if it unbreaks e10s-bc1 CLOSED TREE 2015-04-15 16:45:41 -07:00
Terrence Cole
9d40a4319b Bug 1153382 - Make poison values more toxic when used as a Value; r=sfink 2015-04-13 09:56:02 -07:00
David Major
41e3b2db36 Bug 1154104 - Clean up atomics code for old Visual Studio versions. r=nfroyd 2015-04-13 17:13:00 +02:00
Donato Sciarra
83780468d1 Bug 1119086 - already_AddRefed should define copy/move assignment operators. r=nfroyd 2015-04-10 14:03:00 +02:00
Heiher
10c21c5b56 Bug 1153601 - MFBT: LZ4: Add support for mips64. r=waldo 2015-04-11 22:40:00 +02:00
neil@parkwaycc.co.uk
ba54fe522b Bug 1145056 - Coverity complains on every use of MutexAutoLock and GuardObjectNotifier. r=froydnj 2015-03-19 08:18:00 -07:00
Randall Barker
70c940e622 Bug 1093934 - Create a XPCOM library that can be used to support standalone WebRTC. r=nfroyd 2015-04-03 15:52:00 +02:00
Wes Kocher
e1bc5d7b91 Backed out changeset 0f5799df920b (bug 1093934) for various test failures CLOSED TREE 2015-04-02 13:42:34 -07:00
Randall Barker
3d56345656 Bug 1093934 - Create a XPCOM library that can be used to support standalone WebRTC r=froydnj 2015-04-02 12:12:37 -07:00
Jonathan Watt
f218ddd46e Bug 1147491, part 2 - Disable use of BaseTimeDuration::operator/ with floating point values. r=ehsan 2015-03-30 16:27:13 +01:00
Nicolas B. Pierron
36197ee613 Bug 1143011 - Extract the has/add/take logic out of the register sets to distinguish between allocatable and live sets. r=jandem,Waldo 2015-03-28 01:08:12 +01:00
Nicolas B. Pierron
db010aa463 Bug 1142999 - Remove gcc warning about unused typedef. r=ehoogeveen 2015-03-25 09:47:00 -04:00
Emanuel Hoogeveen
29173d2e37 Bug 1142999 - Add an EnumeratedRange class to iterate EnumeratedArrays. r=nfroyd 2015-03-23 15:06:00 -04:00
Maksim Lebedev
2e2dfad8b8 Bug 1105766 - Part 2: A couple of additions to enable compilation on Windows Phone 8. r=terrence r=ehoogeveen 2015-03-21 15:24:00 +01:00
Ehsan Akhgari
fa52d4d810 Bug 1145631 - Part 6: Remove MOZ_OVERRIDE and MOZ_FINAL; r=froydnj 2015-03-21 12:28:53 -04:00
Ehsan Akhgari
33bb32f549 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -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 MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Bob Owen
f33c2cf585 Bug 1144155 Part 2: Bump the MFBT GCC requirement to 4.7. r=glandium 2015-03-19 10:56:13 +00:00
Seth Fowler
309013ae81 Bug 1143077 (Followup) - Add assignments to Pair test. 2015-03-17 19:40:17 -07:00
Seth Fowler
d842578d0b Bug 1143077 - Add assignment operators to mozilla::Pair. r=waldo 2015-03-17 13:56:49 -07:00
Nathan Froyd
3bf6930c55 Bug 1143014 - fix header sort order in mfbt/; r=Ms2ger 2015-03-13 11:53:02 -04:00
Masayuki Nakano
3cd753d530 Bug 1061604 part.0 Add IsWin10OrLater() r=jimm 2015-03-13 21:51:00 +09:00
Seth Fowler
c1911009b2 Bug 1142376 - Allow copying of mozilla::Pair objects. r=waldo 2015-03-12 17:44:30 -07:00
Seth Fowler
30f03e7712 Bug 1142366 - Add an equivalent of std::make_pair for mozilla::Pair. r=waldo 2015-03-12 17:44:28 -07:00
Nick Fitzgerald
c2d50838e1 Bug 1139993 - Add VectorBase::ConstRange that gives out |const T&| entries. r=Waldo 2015-03-06 15:37:00 -05:00
Gerald Squelart
d805508f0e Bug 1131445 - variadic NS_NewRunnableMethodWithArgs with storage&passing argument type decorators. r=waldo 2015-03-01 18:12:00 +01:00
Gerald Squelart
aff174c5c0 Bug 1137583 - Fix for CV-qualified pointers; Added tests. r=waldo 2015-03-01 18:08:00 +01:00
Dan Gohman
8093a06678 Bug 1131783 - Optimize away null checks in non-POD Vectors too r=waldo 2015-02-12 08:37:01 -08:00
Dan Gohman
177942dd1e Bug 1131783 - Optimize away null checks in Vectors of POD r=waldo 2015-02-12 08:37:01 -08:00
Dan Gohman
4b04b0652f Bug 1131783 - Mark various unlikely conditions as MOZ_UNLIKELY r=waldo 2015-02-12 08:37:01 -08:00
Mike Hommey
6c6500432f Bug 1121269 - Add an AutoCleanLinkedList template that removes and deletes elements upon destruction. r=Waldo 2015-02-11 10:21:02 +09:00
Andrew McCreight
4bec04b0f6 Back out Bug 1127201 (part 1) for various problems. 2015-02-06 15:05:08 -08:00
Nicholas Nethercote
34fafe0cbf Bug 1127201 (part 1) - Let MOZ_ASSERT take a string variable as the second arg. r=Waldo.
ASSERT_UNLESS_FUZZING() (which is defined multiple times!) caused problems due
when __VA_ARGS__ was empty which is most of the time. So I just disallowed the
optional string, which was only used in a small fraction of the occurrences.

I don't particularly like this patch. I'm not convinced its any better than
just removing the nsPrintfCString()s like I did earlier, but I've done it to at
least show what's involved.

--HG--
extra : rebase_source : 10b5bcf8509eaf2fca300b0b8ab1fa130e9f8b8c
2015-02-04 19:42:29 -08:00
Nick Fitzgerald
0d5c35fe70 Bug 1129559 - Implement move construction for mozilla::MaybeOneOf; r=jandem 2015-02-04 13:34:18 -08:00
Bobby Holley
05661e11bd Bug 1129247 - Introduce MOZ_DIAGNOSTIC_ASSERT. r=Waldo 2015-02-04 13:13:58 -08:00
Xidorn Quan
8952231697 Bug 1126701 - Add IntegerRange for iterating integers. r=waldo
--HG--
extra : source : 2977cf3c5b545826a4ec0cdf245e804574cf7ff9
2015-02-04 19:07:32 +11:00
Xidorn Quan
2d33ce150e Bug 1127044 part 2 - Add ReverseIterator template class. r=waldo
--HG--
extra : source : f132d86b18c82109fbcb04f8cb870d13c72feb0a
2015-02-04 19:07:32 +11:00
Xidorn Quan
0a48d14601 Bug 1127044 part 1 - Add IteratorTraits facility. r=waldo
--HG--
extra : source : 797a32d645cb962281bf5c7cb2710e6a4122c945
2015-02-04 19:07:32 +11:00
Birunthan Mohanathas
730659ae0a Bug 1120796 - Part 2: Replace ConvertibleToBool hackarounds with explicit bool operators. r=Waldo 2015-02-03 18:52:36 +02:00
Birunthan Mohanathas
318898d688 Bug 1120796 - Part 1: Prepare code for explicit bool operators. r=Waldo 2015-02-03 18:52:28 +02:00
Dan Gohman
ab5b55adc2 Bug 1125185 - Define MOZ_COLD for marking "cold" functions r=waldo 2015-01-26 17:30:19 -08:00
Masatoshi Kimura
0676786e20 Bug 1111290 - Part 3: Remove TypedEnum.h and fold TypedEnumInternal.h into TypedEnumBits.h. r=waldo 2015-01-26 07:22:11 +09:00
Masatoshi Kimura
ca6988b0d9 Bug 1111290 - Part 2: Non-mechanical changes. r=waldo 2015-01-26 07:22:08 +09:00
Masatoshi Kimura
2490dcfe04 Bug 1111290 - Part 1: Remove MOZ_(BEGIN|END)_ENUM_CLASS. r=waldo 2015-01-26 07:22:07 +09:00
Jan de Mooij
17a5edb905 Bug 1004028 - Enable assertion type validation on MSVC. r=Waldo,terrence 2015-01-24 14:40:27 +01:00
Xidorn Quan
79b052ef1c Bug 1124029 - Fix unsigned/signed mismatch in MathAlgorithms. r=waldo
--HG--
extra : rebase_source : d4ddeacc763ebe9266ad40d4c63f343033b16490
extra : source : 7ca6aa20529ebc304c14c1e21160fd65816415b3
2015-01-23 08:29:36 +11:00
Masatoshi Kimura
e5f1ce00e2 Bug 895582 - Get rid of MOZ_ENUM_TYPE. r=waldo 2015-01-21 22:35:19 +09:00
Ehsan Akhgari
15fd019c38 Bug 1121489 follow-up: Addresss the review comment 2015-01-19 09:07:57 -05:00
Ehsan Akhgari
2a9cd3b8f2 Bug 1121489 - Make it possible to construct a RefPtr from an already_AddRefed; r=froydnj
This will pave the way towards having a MakeAndAddRef function
that returns an already_AddRefed and can be used in graphics code.
2015-01-19 09:00:01 -05:00
Ben Kelly
c1ff242f83 Bug 1122160 Follow-up to fix spelling typo in comment. rs=themaid DONTBUILD 2015-01-16 10:22:43 -05:00
Ben Kelly
78880abad9 Bug 1122160 Add operator+=() and operator-=() to DebugOnly r=froydnj 2015-01-16 09:59:32 -05:00
Trevor Saunders
3f83c69ae4 bug 1077549 - remove useless gcc version checks r=glandium 2015-01-15 21:30:05 -05:00
Jim Blandy
44c5a661e6 Bug 1121080: Fix comments in Move.h explaining perfect forwarding. DONTBUILD r=waldo
--HG--
extra : rebase_source : 442e1c63b4e817121857be2452b40cc27abf4d5e
extra : amend_source : c851c81e48401affa9fcb7b53817d9a77ac89ecf
2015-01-13 10:48:58 -08:00
Brian Smith
e3ae03d594 Bug 1119075, Part 2: Fix typo, r=waldo 2015-01-14 15:45:48 -08:00
Brian Smith
e2b9f78b00 Bug 1119776, Part 4: Avoid defining snprintf when MSVC provides it (MFBT), r=waldo
--HG--
extra : rebase_source : 22216031650057afade8cda274723574af5fee6c
2015-01-08 22:33:03 -08:00
Brian Smith
8cc66c96dd Bug 1119080: Convert the already_Addrefed Derived->Base conversion operator into a move constructor, r=waldo
--HG--
extra : rebase_source : 1dac3313dfa8a5612d05b8806287ad2cee81c7f6
extra : source : 420815ee832b49b695da85e1d0f277fb9f05f870
2015-01-07 20:32:55 -08:00
Masatoshi Kimura
e11e374805 Bug 1120062 - Part 2: Remove use of IsNullPointer. r=waldo 2015-01-15 02:09:11 +09:00
Ehsan Akhgari
920af07cf9 Bug 1120622 - Define MOZ_SUPPORT_ASSERT_CONDITION_TYPE_VALIDATION for all gcc versions now that we don't support 4.4 any more; r=froydnj 2015-01-14 09:00:34 -05:00
Ehsan Akhgari
541efe5b60 Bug 1120620 - Bump the MFBT gcc requirement to 4.6; r=froydnj 2015-01-14 09:00:33 -05:00
Brian Smith
dad22898a4 Bug 1119075: Use standard unicode literals with VS2015 and later, r=waldo
--HG--
extra : rebase_source : f21d1d9eb7cfbc0ed90653f7aca2e9d9c9f9d735
2015-01-07 13:49:32 -08:00
Ehsan Akhgari
1207ff8ae6 Backed out changeset 11aebde6e809 (bug 1120059) because of build bustage on Windows 2015-01-13 00:26:16 -05:00
Birunthan Mohanathas
8a228c8946 Bug 1120059 - Remove MOZ_{HAVE_,}EXPLICIT_CONVERSION. r=Waldo 2015-01-13 06:41:15 +02:00
Xidorn Quan
e2151979a6 Bug 1119199 - Rewrite HashFunctions with variadic templates. r=waldo
--HG--
extra : source : 0756924a2f04c8201c88530412af2feccafab623
2015-01-13 10:48:10 +11:00
Xidorn Quan
f4a0d0c203 Bug 1119199 - Rewrite UniquePtr with variadic template. r=waldo
--HG--
extra : source : 4643ae3a5bd51b3353fbc5c01287a07fbb749e70
2015-01-13 10:48:10 +11:00
Xidorn Quan
60f806f616 Bug 1119199 - Rewrite MaybyOneOf with variadic template.
--HG--
extra : source : ea364897df7f17a960f94ad9b4d33e7ceff18d43
2015-01-13 10:48:10 +11:00
Xidorn Quan
1aaa95ec38 Bug 1119199 - Rewrite Maybe::emplace with variadic template. r=waldo
--HG--
extra : source : 4ad70d3ba8bcd02f9af68ec19167fb451c395a45
2015-01-13 10:48:10 +11:00
Wes Kocher
750bdeab34 Backout e891f69a7edc 2015-01-12 14:46:17 -08:00
Wes Kocher
4801a49ecb Backout 73fcb9fa303d 2015-01-12 14:46:01 -08:00
Ehsan Akhgari
560e47cf09 Bug 1120622 - Define MOZ_SUPPORT_ASSERT_CONDITION_TYPE_VALIDATION for all gcc versions now that we don't support 4.4 any more; r=froydnj 2015-01-12 16:35:09 -05:00
Ehsan Akhgari
94ec32f711 Bug 1120620 - Bump the MFBT gcc requirement to 4.6; r=froydnj 2015-01-12 16:35:08 -05:00
Masatoshi Kimura
f70d08c5aa Bug 1120062 - Part 1: Remove most Nullptr.h includes. r=waldo 2015-01-11 11:34:52 +09:00
Chris Peterson
0b8b25193e Bug 1118076 - Remove MOZ_THIS_IN_INITIALIZER_LIST. r=Waldo 2015-01-06 21:39:46 -08:00
Ehsan Akhgari
b6aab95c0c Bug 1118486 - Part 2: Remove MOZ_DELETE macro and use = delete directly; r=Waldo 2015-01-09 09:44:05 -05:00
Chris Peterson
424eea2aaf Bug 1118529 - Remove MSIntTypes.h. r=Waldo 2015-01-06 21:41:15 -08:00
Nicholas Nethercote
6370c17295 Bug 1057134 - Remove std::_Debug_message linking hack that's no longer needed. r=dmajor.
--HG--
extra : rebase_source : 53ee0cebc42269dcc228cfc5a18b0288e13716f3
2015-01-08 21:59:43 -08:00
Ehsan Akhgari
b6e35bb4b4 Bug 1118486 - Part 1: Use = delete instead of MOZ_DELETE directly; r=Waldo
Most of this patch (with the exception of dom/bindings/Codegen.py) was
generated by the following bash script:

#!/bin/bash

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "*/.git*" \
       ! -wholename "obj-*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -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 MOZ_DELETE '= delete'
2015-01-08 23:19:05 -05:00
Ehsan Akhgari
40d4e01642 Bug 1119071 - Clean up some code used for older unsupported MSVC versions in MFBT; r=froydnj 2015-01-08 10:40:15 -05:00
David Major
62db1b818f Bug 1119030: Make MOZ_CRASHes unique to prevent compiler folding. r=Waldo
--HG--
extra : rebase_source : f8401e3eee6c62545553452e355c8213480a869d
2015-01-08 19:13:04 +13:00
Ehsan Akhgari
6871466493 Bug 1116906 - Move AlreadyAddRefed.h to MFBT; r=froydnj 2015-01-07 11:51:29 -05:00
Ehsan Akhgari
26a8215eb5 Bug 1114999 - Part 2: Apply MOZ_NO_ADDREF_RELEASE_ON_RETURN to all smart pointer arrow operators that can return refcounted objects; r=jrmuizel 2015-01-06 16:30:03 -05:00
Ehsan Akhgari
3aca5d2418 Bug 1114987 - Add MOZ_UNSAFE_REF and mark GlobalObject::mGlobalObject as such; r=smaug 2015-01-05 21:01:30 -05:00
Ehsan Akhgari
ef6963bd58 Bug 1116622 - Give TemporaryRef a take() method semantically equivalent to already_AddRefed::take(); r=froydnj
This is in preparation of removing TemporaryRef.  It should help make
already_AddRefed a drop-in replacement for it.
2015-01-05 11:32:37 -05:00
Ehsan Akhgari
9aa1366870 Bug 1117036 - Make it possible to optionally mark functions defined by MOZ_DECLARE_REFCOUNTED_VIRTUAL_TYPENAME as MOZ_OVERRIDE; r=froydnj 2015-01-05 11:28:55 -05:00
Chris Peterson
55097a118c Bug 1114724 - Define PRIuSIZE format specifiers for size_t. r=Waldo 2014-12-21 23:30:06 -08:00
Ehsan Akhgari
ca18c36a95 Bug 1114880 follow-up: Rename MOZ_{STRONG,WEAK}_REF to MOZ_{OWNING,NON_OWNING}_REF
--HG--
extra : rebase_source : 51fff0785d112b5b87be3c6ff723c8986b37effe
2014-12-23 21:17:50 -05:00
Ehsan Akhgari
a6e15b91de Bug 1114979 - Annotate some strong and weak references in MFBT; r=froydnj
--HG--
extra : rebase_source : 63d9ca59f8f6be06efd087600c8fd5c5f52e5cd1
2014-12-23 17:26:28 -05:00
Dan Gohman
d25afeab4b Bug 1113445 - SpiderMonkey: Handle -0 properly in SIMD.float32x4.signMask r=bbouvier,waldo 2014-12-23 13:52:49 -08:00
Ehsan Akhgari
a7cfb40a16 Bug 1114696 - Add MOZ_STRONG_REF and MOZ_WEAK_REF annotations; r=froydnj 2014-12-22 18:16:55 -05:00
Ehsan Akhgari
c6be95fe5c Bug 1114267 - Part 2: Add MOZ_TRIVIAL_CTOR_DTOR to MOZ_ONLY_USED_TO_AVOID_STATIC_CONSTRUCTORS in non-debug builds; r=jrmuizel 2014-12-22 18:16:16 -05:00
Ehsan Akhgari
66d94da660 Bug 773014 - Part 2: Mark Static{Auto,Ref}Ptr as global-only; r=jrmuizel 2014-12-22 18:10:44 -05:00
Jacek Caban
b90d771c94 Bug 1114368 - Use GCC builtins in MathAlgorithms.h on mingw. r=froydnj 2014-12-22 12:38:41 +01:00
Ehsan Akhgari
1ac86d08eb Bug 1114351 - Use mozilla::IsNaN() in DOUBLE_TO_JSVAL(); r=Waldo
Note that this requires making sure that IsNaN is constexpr because it
needs to be passed to the constexpr IMPL_TO_JSVALUE() function in
DOUBLE_TO_JSVAL().

--HG--
extra : amend_source : dbd8bb0659b53e7d36d2600ac97f0a753ef772c7
2014-12-21 19:16:49 -05:00
Ehsan Akhgari
1f73b7f639 Clarify the MakeUnique documentation (comment only change, no bug)
DONTBUILD, CLOSED TREE

--HG--
extra : amend_source : 92e8482f1dfb6f9f47acdec1e570d62887257122
2014-12-19 17:51:10 -05:00
Benjamin Peterson
a75180cf27 No bug - fix typo r=me 2014-12-19 12:40:30 -06:00
Ehsan Akhgari
ecb73205b2 Bug 867348 - Part 2: Apply MOZ_NO_ARITHMETIC_EXPR_IN_ARGUMENT to CheckedInt's constructor; r=jrmuizel,cpearce
Note that the analysis currently just looks at the AST subtree of the
function call site and is therefore unable to correctly deal with cases
such as the last two hunks of the change to OggCodecState.cpp.  Fixing
the analysis to deal with that would be very difficult, so we currently
adjust the code so that it compiles.  The first hunk in that file though
is a real bug that this analysis found.
2014-12-18 15:27:05 -05:00
Ryan VanderMeulen
a799d74695 Backed out changesets acb4dd16755c and 40768f723990 (bug 867348) for static analysis bustage.
CLOSED TREE
2014-12-18 15:59:51 -05:00
Ehsan Akhgari
750394807d Bug 867348 - Part 2: Apply MOZ_NO_ARITHMETIC_EXPR_IN_ARGUMENT to CheckedInt's constructor; r=jrmuizel
Note that the analysis currently just looks at the AST subtree of the
function call site and is therefore unable to correctly deal with cases
such as the last two hunks of the change to OggCodecState.cpp.  Fixing
the analysis to deal with that would be very difficult, so we currently
adjust the code so that it compiles.  The first hunk in that file though
is a real bug that this analysis found.

--HG--
extra : rebase_source : b44bb6d90d95551d860e0b5a1afcf2bb35cde084
2014-12-18 15:27:05 -05:00
Ehsan Akhgari
5a38ab7945 Bug 1111255 - Remove some code specific to MSVC7 from MFBT; r=froydnj
--HG--
extra : amend_source : 3662850820de462e108212626dc7bc1c9e22122e
2014-12-14 14:58:13 -05:00
Ehsan Akhgari
8ca3485e2d Bug 1111247 - Treat C++11 enum types as available on all MSVC versions; r=froydnj
Since we don't support anything older than MSVC2005...

--HG--
extra : amend_source : 80ad15c08f19448f8e896989392c78f1437e982d
2014-12-14 14:56:23 -05:00
Nicholas Nethercote
2d817d320d Bug 1109407 - Give SegmentedVector a default segment size. r=froydnj.
--HG--
extra : rebase_source : 0ceae77c9fec06bbd8c3231434f62fc0e83d9bf1
2014-12-11 14:11:43 -08:00
Ehsan Akhgari
15d4021e43 Bug 1109729 - Fix more bad implicit constructors in mfbt; r=froydnj 2014-12-10 17:47:42 -05:00
Nicholas Nethercote
d8a3fd397f Bug 1102525 (part 2) - Add SegmentedVector to MFBT. r=froydnj.
This is based on the SegmentedArray type from nsCycleCollector.cpp.

--HG--
extra : rebase_source : 06d2feea3233e5ddd3c47d18c53a661de8a06bb2
2014-12-08 14:45:13 -08:00