Backed out changeset c8e5a0703821 (bug 1283395) for bustage on a CLOSED TREE
authorCarsten "Tomcat" Book <cbook@mozilla.com>
Thu, 21 Jul 2016 08:13:06 +0200
changeset 306030 138937cd04cb1ee5620cdb2f31e977e28783fe3b
parent 306029 de1db0ba27a71eb7d6c8ce93123967e5ab582b2e
child 306031 28f30533c6359655335ac5a09e37847ef54dc6ae
push id30474
push usercbook@mozilla.com
push dateThu, 21 Jul 2016 14:25:10 +0000
treeherdermozilla-central@6b180266ac16 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1283395
milestone50.0a1
backs outc8e5a0703821ec9bb41eb7a80800eed69b61d60d
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backed out changeset c8e5a0703821 (bug 1283395) for bustage on a CLOSED TREE
mfbt/Assertions.h
mfbt/StaticAnalysisFunctions.h
mfbt/moz.build
--- a/mfbt/Assertions.h
+++ b/mfbt/Assertions.h
@@ -12,17 +12,16 @@
 #if defined(MOZILLA_INTERNAL_API) && defined(__cplusplus)
 #define MOZ_DUMP_ASSERTION_STACK
 #endif
 
 #include "mozilla/Attributes.h"
 #include "mozilla/Compiler.h"
 #include "mozilla/Likely.h"
 #include "mozilla/MacroArgs.h"
-#include "mozilla/StaticAnalysisFunctions.h"
 #ifdef MOZ_DUMP_ASSERTION_STACK
 #include "nsTraceRefcnt.h"
 #endif
 
 #if defined(MOZ_CRASHREPORTER) && defined(MOZILLA_INTERNAL_API) && \
     !defined(MOZILLA_EXTERNAL_LINKAGE) && defined(__cplusplus)
 namespace CrashReporter {
 // This declaration is present here as well as in nsExceptionHandler.h
@@ -364,27 +363,27 @@ struct AssertionConditionType
 #else
 #  define MOZ_VALIDATE_ASSERT_CONDITION_TYPE(x)
 #endif
 
 /* First the single-argument form. */
 #define MOZ_ASSERT_HELPER1(expr) \
   do { \
     MOZ_VALIDATE_ASSERT_CONDITION_TYPE(expr); \
-    if (MOZ_UNLIKELY(!MOZ_CHECK_ASSERT_ASSIGNMENT(expr))) { \
+    if (MOZ_UNLIKELY(!(expr))) { \
       MOZ_ReportAssertionFailure(#expr, __FILE__, __LINE__); \
       MOZ_CRASH_ANNOTATE("MOZ_RELEASE_ASSERT(" #expr ")"); \
       MOZ_REALLY_CRASH(); \
     } \
   } while (0)
 /* Now the two-argument form. */
 #define MOZ_ASSERT_HELPER2(expr, explain) \
   do { \
     MOZ_VALIDATE_ASSERT_CONDITION_TYPE(expr); \
-    if (MOZ_UNLIKELY(!MOZ_CHECK_ASSERT_ASSIGNMENT(expr))) { \
+    if (MOZ_UNLIKELY(!(expr))) { \
       MOZ_ReportAssertionFailure(#expr " (" explain ")", __FILE__, __LINE__); \
       MOZ_CRASH_ANNOTATE("MOZ_RELEASE_ASSERT(" #expr ") (" explain ")"); \
       MOZ_REALLY_CRASH(); \
     } \
   } while (0)
 
 #define MOZ_RELEASE_ASSERT_GLUE(a, b) a b
 #define MOZ_RELEASE_ASSERT(...) \
deleted file mode 100644
--- a/mfbt/StaticAnalysisFunctions.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/* vim: set ts=8 sts=2 et sw=2 tw=80: */
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-#ifndef mozilla_StaticAnalysisFunctions_h
-#define mozilla_StaticAnalysisFunctions_h
-
-#include <stdbool.h>
-
-/*
- * Functions that are used as markers in Gecko code for static analysis. Their
- * purpose is to have different AST nodes generated during compile time and to
- * match them based on different checkers implemented in build/clang-plugin
- */
-
-#ifdef MOZ_CLANG_PLUGIN
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * MOZ_AssertAssignmentTest - used in MOZ_ASSERT in order to test the possible
- * presence of assignment instead of logical comparisons.
- *
- * Example:
- * MOZ_ASSERT(retVal = true);
- */
-static MOZ_ALWAYS_INLINE bool MOZ_AssertAssignmentTest(bool exprResult) {
-  return exprResult;
-}
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#define MOZ_CHECK_ASSERT_ASSIGNMENT(expr) MOZ_AssertAssignmentTest(!!(expr))
-
-#else
-
-#define MOZ_CHECK_ASSERT_ASSIGNMENT(expr) (!!(expr))
-
-#endif /* MOZ_CLANG_PLUGIN */
-#endif /* StaticAnalysisFunctions_h */
\ No newline at end of file
--- a/mfbt/moz.build
+++ b/mfbt/moz.build
@@ -79,17 +79,16 @@ EXPORTS.mozilla = [
     'Saturate.h',
     'Scoped.h',
     'ScopeExit.h',
     'SegmentedVector.h',
     'SHA1.h',
     'SizePrintfMacros.h',
     'Snprintf.h',
     'SplayTree.h',
-    'StaticAnalysisFunctions.h',
     'TaggedAnonymousMemory.h',
     'TemplateLib.h',
     'ThreadLocal.h',
     'ToString.h',
     'Tuple.h',
     'TypedEnumBits.h',
     'Types.h',
     'TypeTraits.h',