Граф коммитов

419 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 33b4cfe736 Bug 1610702 - Generalize Vector::podResizeToFit into Vector::shrinkStorageToFit(). r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D61337

--HG--
extra : moz-landing-system : lando
2020-02-03 17:32:12 +00:00
Emilio Cobos Álvarez 256c124f94 Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj
This was done by:

This was done by applying:

```
diff --git a/python/mozbuild/mozbuild/code-analysis/mach_commands.py b/python/mozbuild/mozbuild/code-analysis/mach_commands.py
index 789affde7bbf..fe33c4c7d4d1 100644
--- a/python/mozbuild/mozbuild/code-analysis/mach_commands.py
+++ b/python/mozbuild/mozbuild/code-analysis/mach_commands.py
@@ -2007,7 +2007,7 @@ class StaticAnalysis(MachCommandBase):
         from subprocess import Popen, PIPE, check_output, CalledProcessError

         diff_process = Popen(self._get_clang_format_diff_command(commit), stdout=PIPE)
-        args = [sys.executable, clang_format_diff, "-p1", "-binary=%s" % clang_format]
+        args = [sys.executable, clang_format_diff, "-p1", "-binary=%s" % clang_format, '-sort-includes']

         if not output_file:
             args.append("-i")
```

Then running `./mach clang-format -c <commit-hash>`

Then undoing that patch.

Then running check_spidermonkey_style.py --fixup

Then running `./mach clang-format`

I had to fix four things:

 * I needed to move <utility> back down in GuardObjects.h because I was hitting
   obscure problems with our system include wrappers like this:

0:03.94 /usr/include/stdlib.h:550:14: error: exception specification in declaration does not match previous declaration
0:03.94 extern void *realloc (void *__ptr, size_t __size)
0:03.94              ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/malloc_decls.h:53:1: note: previous declaration is here
0:03.94 MALLOC_DECL(realloc, void*, void*, size_t)
0:03.94 ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/mozilla/mozalloc.h:22:32: note: expanded from macro 'MALLOC_DECL'
0:03.94     MOZ_MEMORY_API return_type name##_impl(__VA_ARGS__);
0:03.94                                ^
0:03.94 <scratch space>:178:1: note: expanded from here
0:03.94 realloc_impl
0:03.94 ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/mozmemory_wrap.h:142:41: note: expanded from macro 'realloc_impl'
0:03.94 #define realloc_impl mozmem_malloc_impl(realloc)

   Which I really didn't feel like digging into.

 * I had to restore the order of TrustOverrideUtils.h and related files in nss
   because the .inc files depend on TrustOverrideUtils.h being included earlier.

 * I had to add a missing include to RollingNumber.h

 * Also had to partially restore include order in JsepSessionImpl.cpp to avoid
   some -WError issues due to some static inline functions being defined in a
   header but not used in the rest of the compilation unit.

Differential Revision: https://phabricator.services.mozilla.com/D60327

--HG--
extra : moz-landing-system : lando
2020-01-20 16:19:48 +00:00
Emilio Cobos Álvarez aa3a695712 Bug 1609996 - Remove mozilla/Move.h. r=froydnj
rg -l 'mozilla/Move.h' | xargs sed -i 's/#include "mozilla\/Move.h"/#include <utility>/g'

Further manual fixups and cleanups to the include order incoming.

Differential Revision: https://phabricator.services.mozilla.com/D60323

--HG--
extra : moz-landing-system : lando
2020-01-20 16:18:20 +00:00
Emilio Cobos Álvarez 5cd5e6f148 Bug 1609996 - Remove mozilla::Swap in favor of std::swap. r=froydnj
Now mfbt/Move.h is empty except for that excellent comment about move
semantics... Should we put it somewhere else and delete the header as a
follow-up? Or just delete the header and carry on?

Differential Revision: https://phabricator.services.mozilla.com/D60297

--HG--
extra : moz-landing-system : lando
2020-01-20 16:17:06 +00:00
Emilio Cobos Álvarez cde7beaaa4 Bug 1608064 - Replace Is{Rvalue,Lvalue,}Reference with <type_traits> equivalents. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D59309

--HG--
extra : moz-landing-system : lando
2020-01-10 10:40:34 +00:00
Emilio Cobos Álvarez 278b36aafb Bug 1607816 - Replace mozilla::{Max, Min}Value with std::numeric_limits. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D59153

--HG--
extra : moz-landing-system : lando
2020-01-08 16:30:40 +00:00
Emilio Cobos Álvarez f210527c4f Bug 1607595 - Manual fixups, and remove mozilla::IsBaseOf. r=froydnj
This is manual, but hopefully trivial.

Differential Revision: https://phabricator.services.mozilla.com/D59014

--HG--
extra : moz-landing-system : lando
2020-01-08 14:52:18 +00:00
Emilio Cobos Álvarez e363a41bd4 Bug 1607595 - Remove uses of mozilla::IsBaseOf. r=froydnj
Automatically generated by:

$ rg 'IsBaseOf<' | cut -d : -f 1 | xargs sed -i 's/mozilla::IsBaseOf</std::is_base_of</g'
$ rg 'IsBaseOf<' | cut -d : -f 1 | xargs sed -i 's/IsBaseOf</std::is_base_of</g

Differential Revision: https://phabricator.services.mozilla.com/D59013

--HG--
extra : moz-landing-system : lando
2020-01-08 14:52:10 +00:00
Emilio Cobos Álvarez 61a790403f Bug 1604574 - Fix HashTable move constructor, and remove silly ifdefs. r=froydnj
Also add a test for the hash table, because we seem to have zero of them :(

Call clearAndCompact() so that we get minimum capacity on re-growth.

Differential Revision: https://phabricator.services.mozilla.com/D57501

--HG--
extra : moz-landing-system : lando
2019-12-17 18:36:58 +00:00
Jeff Walden e57173377f Bug 1439659 - Make |MOZ_{LITTLE,BIG}_ENDIAN| into function macros so that invoking them inside |#if| conditions when they haven't been defined yet is a compile error. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D57038

--HG--
extra : moz-landing-system : lando
2019-12-13 20:51:04 +00:00
Simon Giesecke 33bfd1690d Bug 1600096 - Disable RefPtr conversion constructors when underlying pointer types are not convertible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D55141

--HG--
extra : moz-landing-system : lando
2019-12-11 10:11:45 +00:00
Mihai Alexandru Michis 64878ccca2 Backed out changeset d561645c3554 (bug 1600096) for causing bustages in RefPtr.h
CLOSED TREE
2019-12-09 17:46:46 +02:00
Simon Giesecke 0e472fc621 Bug 1600096 - Disable RefPtr conversion constructors when underlying pointer types are not convertible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D55141

--HG--
extra : moz-landing-system : lando
2019-12-09 15:32:42 +00:00
Peter Van der Beken 22e4870bda Bug 1584256 - Add IPDLParamTraits for Variant. r=nika,jwalden
Differential Revision: https://phabricator.services.mozilla.com/D47607

--HG--
extra : moz-landing-system : lando
2019-10-08 16:03:11 +00:00
Emilio Cobos Álvarez 5c4d9db375 Bug 1582358 - Fix move semantics for Result where the error is non-copiable. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D46428

--HG--
extra : moz-landing-system : lando
2019-09-20 01:18:40 +00:00
Henri Sivonen c193518677 Bug 1490601 part 2 - Move C++ entry points to encoding_c_mem to mfbt/. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D43957

--HG--
extra : moz-landing-system : lando
2019-09-18 08:26:34 +00:00
Liang-Heng Chen 0e69ec9edd Bug 1581511 - fix move constructor of ScopeExit; r=froydnj
add `MOZ_GUARD_OBJECT_NOTIFIER_{PARAM,INIT}` to move constructor.

Differential Revision: https://phabricator.services.mozilla.com/D46005

--HG--
extra : moz-landing-system : lando
2019-09-17 13:45:28 +00:00
Honza Bambas 431cc4a42d Bug 1580182 - Allow mozilla::SupportsWeakPtr be on base classes as well, r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D45515

--HG--
extra : moz-landing-system : lando
2019-09-11 19:44:17 +00:00
Eric Rahm dfb17c1ba8 Bug 1578107 - Remove using namespace std from mfbt r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D44320

--HG--
extra : moz-landing-system : lando
2019-09-02 16:45:26 +00:00
Henri Sivonen 95fecf7af4 Bug 1577700 - Add a function for obtaining a Span of char from a Span of uint8_t. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D44124

--HG--
extra : moz-landing-system : lando
2019-08-30 13:16:19 +00:00
Emilio Cobos Álvarez c3ee3ac3a8 Bug 1418624 - Allow mozilla::Result to be moved, make unwrap{,Err}() move, and add inspect() APIs that return references. r=froydnj
Also adjust some of the callers that were either calling unwrap() repeatedly on
the same result, or were doing silly copies, to use inspect().

We could try to use stuff like:

https://clang.llvm.org/docs/AttributeReference.html#consumed-annotation-checking

Differential Revision: https://phabricator.services.mozilla.com/D41425

--HG--
extra : moz-landing-system : lando
2019-08-13 08:26:18 +00:00
Emilio Cobos Álvarez b92a191709 Bug 1562789 - SmallPointerArray should support moves, and have an IsEmpty() helper. r=froydnj
This also implicitly deletes its copy-assignment operator and copy-constructor,
which is great since it's a huge footgun.

Differential Revision: https://phabricator.services.mozilla.com/D36549

--HG--
extra : moz-landing-system : lando
2019-07-02 18:50:04 +00:00
Emilio Cobos Álvarez c7aac206e4 Bug 1546697 - EnumeratedArray should have a copy assignment operator. r=froydnj
I'll use this in a following patch.

Differential Revision: https://phabricator.services.mozilla.com/D28679

--HG--
extra : moz-landing-system : lando
2019-04-25 16:40:47 +00:00
Jim Blandy 52031426cb Bug 1546853: Implement mozilla::Variant::addTagToHash. r=froydnj
Define the Variant::addTagToHash method, which perturbs a hash value according
to the variant's current alternative's tag. This makes it easier to avoid
collisions in variants in which different alternatives might hash similarly.

Tests included.

Differential Revision: https://phabricator.services.mozilla.com/D28768

--HG--
extra : moz-landing-system : lando
2019-04-25 14:03:40 +00:00
Geoff Brown 323e21aa9d Bug 1546012 - Avoid slow sleeps on Android in TestSPSCQueue; r=padenot
Reducing the sleep to 0 on Android results in a dramatic reduction in run time, and the test
passes consistently.

Differential Revision: https://phabricator.services.mozilla.com/D28296

--HG--
extra : moz-landing-system : lando
2019-04-23 13:39:36 +00:00
Sylvestre Ledru 03fc65347c Bug 1542146 - Apply the change with the option StatementMacros from clang-format-8 r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D26280

--HG--
extra : moz-landing-system : lando
2019-04-05 21:42:17 +00:00
Csoregi Natalia ba58e936bd Backed out changeset 4ad80127f89f (bug 1519636) for bustage on MarkupMap.h and nsAccessibilityService.cpp. CLOSED TREE 2019-04-05 09:48:19 +03:00
Sylvestre Ledru d1c1878603 Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D26098

--HG--
extra : moz-landing-system : lando
2019-04-04 21:36:16 +00:00
Narcis Beleuzu 24dbe577a5 Backed out changeset 389b6bbd76db (bug 1519636) for bustages on MarkupMap.h . CLOSED TREE 2019-04-05 00:27:56 +03:00
Sylvestre Ledru 399dbd28fe Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D26098

--HG--
extra : moz-landing-system : lando
2019-04-04 20:12:23 +00:00
Gerald Squelart 7fca0d0d21 Bug 1429613 - Variadic Variant::match, takes one function object per option - r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D24890

--HG--
extra : moz-landing-system : lando
2019-04-02 11:53:51 +00:00
Gerald Squelart e2d15a1cfb Bug 1429613 - Variant matcher callbacks renamed from `match` to `operator()` - r=froydnj
Mechanical change from Matcher::match(...) to Matcher::operator()(...).
This will now permit the use of generic lambdas, and facilitate the
implementation of multi-lambda match.

Differential Revision: https://phabricator.services.mozilla.com/D24889

--HG--
extra : moz-landing-system : lando
2019-04-02 11:53:47 +00:00
Cameron McCormack 714e4a84fb Bug 1538081 - Part 4: Tests. r=froydnj,gerald
Depends on D25024

Differential Revision: https://phabricator.services.mozilla.com/D25025

--HG--
extra : moz-landing-system : lando
2019-03-30 04:24:34 +00:00
Ciure Andrei 615006146b Backed out 4 changesets (bug 1538081) for causing BaseElf.cpp bustages CLOSED TREE
Backed out changeset ced61a86c74c (bug 1538081)
Backed out changeset d6d331abbf0e (bug 1538081)
Backed out changeset 26df801e44db (bug 1538081)
Backed out changeset 113ac188a69e (bug 1538081)
2019-03-30 03:02:15 +02:00
Cameron McCormack 665d6f124d Bug 1538081 - Part 4: Tests. r=froydnj,gerald
Depends on D25024

Differential Revision: https://phabricator.services.mozilla.com/D25025

--HG--
extra : moz-landing-system : lando
2019-03-30 00:21:26 +00:00
Gerald Squelart d8e4582b6c Bug 1539322 - Add Vector::eraseIf and Vector::eraseIfEqual - r=froydnj
Convenience functions to erase elements based on a predicate, or by comparing to
a value. They are optimized to use the minimal amount of moves necessary.

Differential Revision: https://phabricator.services.mozilla.com/D25016

--HG--
extra : moz-landing-system : lando
2019-03-28 01:00:35 +00:00
Cosmin Sabou 3d469329a4 Merge mozilla-inbound to mozilla-central. a=merge 2019-03-27 06:45:13 +02:00
violet c9809c7c5a Bug 1469155 - Add overloading for std::nullptr_t for RangedPtr equality operator r=froydnj
Templated pointer can't match |nullptr|, we should add overloading for
std::nullptr_t specifically to be able to support |nullptr|.

Differential Revision: https://phabricator.services.mozilla.com/D24925

--HG--
extra : moz-landing-system : lando
2019-03-26 19:10:24 +00:00
dOn'tReallycAre 2823fecb3a Bug 1353767 - BufferList methods that can OOM should all be MOZ_MUST_USE. r=billm
The Pickle methods can use MOZ_ALWAYS_TRUE because the BufferList is
infallible, so the WriteBytes calls will never fail.
2019-03-26 13:24:00 +02:00
Jeff Walden 83cdc4ca37 Bug 1526507 - Use std::exp2{,f}(n) instead of pow{,f}(2.0, n) in TestFloatingPoint.cpp to be (hopefully) more resilient against standard library imprecision in the latter. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D24403

--HG--
extra : moz-landing-system : lando
2019-03-25 17:54:25 +00:00
Jeff Walden 84b07b0389 Bug 1538098 - Backed out changeset 0a0194cd76a7 for some in-the-field bustage that isn't immediately diagnosable and fixable, before the wekeend. r=crashes
--HG--
extra : amend_source : ef5e1c14b897af80f410365d5afd99ce5dc96ab2
2019-03-22 13:48:06 -07:00
Jeff Walden 70e73da609 Bug 1531638 - Make Vector::begin() always return a non-null pointer, to accommodate users that need/want this. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D21825

--HG--
extra : rebase_source : 5682d209aef3c10b204678c8865758708f2a7e3e
2019-02-28 21:30:49 -08:00
Jeff Walden 525cd3e150 Bug 1531638 - Make Vector::begin() always return a non-null pointer, to accommodate users that need/want this. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D21825

--HG--
extra : rebase_source : c4c70e38ef98e544af23f1a33c17dd12c04c2e9e
2019-02-28 21:30:49 -08:00
Jeff Walden 7b8ce42e6e Bug 1453456 - Remove nsCRT::IsAscii(null-terminated string) in favor of mozilla::IsAsciiNullTerminated. r=froydnj 2019-02-25 12:22:24 -08:00
Mike Hommey ef3ad686ee Bug 1512504 - Remove support for MSVC. r=froydnj
Consequently, this removes:
- MOZ_LIBPRIO, which is now always enabled.
- non_msvc_compiler, which is now always true.
- The cl.py wrapper, since it's not used anymore.
- CL_INCLUDES_PREFIX, which was only used for the cl.py wrapper.
- NONASCII, which was only there to ensure CL_INCLUDES_PREFIX still
  worked in non-ASCII cases.

This however keeps a large part of detecting and configuring for MSVC,
because we still do need it for at least headers, libraries, and midl.

Depends on D19614

Differential Revision: https://phabricator.services.mozilla.com/D19615

--HG--
extra : moz-landing-system : lando
2019-02-14 21:45:27 +00:00
Ehsan Akhgari e5e885ae31 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre
# ignore-this-changeset

--HG--
extra : amend_source : 7221c8d15a765df71171099468e7c7faa648f37c
extra : histedit_source : a0cce6015636202bff09e35a13f72e03257a7695
2019-01-18 10:16:18 +01:00
David Major d3a71fc36a Bug 1520241 - Avoid slow sleeps on Windows in TestSPSCQueue.exe r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D16583

--HG--
extra : moz-landing-system : lando
2019-01-16 12:04:13 +00:00
Sylvestre Ledru b2099f351e Bug 1515434 - Only activate the deactivation of -Wc++2a-compat from clang 6 r=botond
Differential Revision: https://phabricator.services.mozilla.com/D15012

--HG--
extra : moz-landing-system : lando
2018-12-19 21:18:46 +00:00
Sylvestre Ledru bd9482e301 Bug 1509926 - Disable the warning -Wc++2a-compat on some files r=dholbert
Fails with clang trunk:
"type of UTF-8 string literal will change from array of const char to array of const char8_t in C++2a"
otherwise

Differential Revision: https://phabricator.services.mozilla.com/D14696

--HG--
extra : moz-landing-system : lando
2018-12-17 06:56:45 +00:00
Sylvestre Ledru 6f45c666bc Bug 1513205 - Also update the tests to match the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D14595

--HG--
extra : moz-landing-system : lando
2018-12-14 18:10:35 +00:00