Commit Graph

781 Commits

Author SHA1 Message Date
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
Nicholas Nethercote
4a0860a2fd Bug 1102525 (part 1) - Add InfallibleAllocPolicy to mozalloc. r=glandium.
--HG--
extra : rebase_source : a79162fb7f73e52c5c8df29c8229efc64c3451e5
2014-12-08 14:45:10 -08:00
Jeff Walden
e0a245bcec Bug 1105261 - Revert fresh vectors to not prereserving their inline allocation space, because the guaranteed extent of that space is an implementation detail. r=nbp 2014-11-26 16:01:19 -05:00
Phil Ringnalda
0026c263f6 Backed out 2 changesets (bug 1052139, bug 1105261) for b2g desktop crashes
CLOSED TREE

Backed out changeset 72c672d91f9c (bug 1052139)
Backed out changeset e3ce0e3a147c (bug 1105261)
2014-12-01 18:25:53 -08:00
Jeff Walden
4037ed512e Bug 1105261 - Revert fresh vectors to not prereserving their inline allocation space, because the guaranteed extent of that space is an implementation detail. r=nbp
--HG--
extra : rebase_source : ec5431786f504651b1f8a4a019da6e537b6ac175
2014-11-26 16:01:19 -05:00
Masatoshi Kimura
ba8776d030 Bug 1094012 - Assume Win7 or later on Win64. r=jimm 2014-11-24 22:18:10 +09:00
Nathan Froyd
4dbacebed1 Bug 1099251 - make ChaosMode's behavior modifications more finely-grained selectable; r=roc 2014-11-14 13:12:51 -05:00
Matthew Gregan
1f133d4dff Bug 1097512 - Allow using compound operators where the LHS and RHS are both CheckedInt<T>. r=jwalden+bmo 2014-11-14 16:13:23 +13:00
Tom Tromey
b2705a4bdd Bug 1093823 - Avoid valgrind report from ThreadLocal<bool>. r=froydnj 2014-11-07 08:41:00 -05:00
Dan Gohman
24d520803a Bug 1094052 - IonMonkey: Fix range analysis for Math.sign(-0) r=nbp,h4writer 2014-11-05 08:38:40 -08:00
Nicholas Nethercote
f8116d592a Bug 1091986 (part 1) - Remove an over-zealous assertion in Vector.h. 2014-10-30 19:48:10 -07:00
Jim Blandy
eccc285f1d Bug 1091882: Simplify some uses of mozilla::PointerRangeSize, and clarify comment. r=waldo 2014-11-03 15:55:59 -08:00
Jacek Caban
7c3c560b60 Bug 1091594 - Added explicit integer casts to char16ptr_t. r=jmathies
--HG--
extra : rebase_source : b351ddfcd263c8dfee436f00ab8a917d8bfc36e2
2014-11-03 14:09:48 +01:00
Mike Hommey
d667f4bb59 Bug 1077148 part 4 - Add and use new moz.build templates for Gecko programs and libraries. r=gps
There are, sadly, many combinations of linkage in use throughout the tree.
The main differentiator, though, is between program/libraries related to
Gecko or not. Kind of. Some need mozglue, some don't. Some need dependent
linkage, some standalone.

Anyways, these new templates remove the need to manually define the
right dependencies against xpcomglue, nspr, mozalloc and mozglue
in most cases.

Places that build programs and were resetting MOZ_GLUE_PROGRAM_LDFLAGS
or that build libraries and were resetting MOZ_GLUE_LDFLAGS can now
just not use those Gecko-specific templates.
2014-10-30 13:06:12 +09:00
David Rajchenbach-Teller
5e7354aba9 Bug 1075134 - MOZ_LSAN macros. r=froydnj 2014-10-21 13:00:54 +02:00
Ehsan Akhgari
9fb16d5dd1 Bug 1080968 - Add support for constexpr and explicit conversions on clang-cl; r=froydnj
--HG--
extra : rebase_source : ef22967d83577e70d5e6e122bf5322f31eeb97d0
2014-10-10 18:29:56 -04:00
Ehsan Akhgari
62648e6d1a Bug 1080946 - Don't mark ASAN poisoning functions as dllexport on Windows; r=njn
--HG--
extra : rebase_source : da03e54614b995138ecaead7ae1ef7b35daf3961
2014-10-10 10:33:16 -04:00
David Major
5cb899f03e Bug 1080297 - Use native inttypes.h on VS2013. r=glandium 2014-10-09 21:06:30 +13:00