--- a/accessible/src/atk/AccessibleWrap.cpp
+++ b/accessible/src/atk/AccessibleWrap.cpp
@@ -676,17 +676,16 @@ getRoleCB(AtkObject *aAtkObj)
case roles::geckoRole: \
aAtkObj->role = atkRole; \
break;
switch (accWrap->Role()) {
#include "RoleMap.h"
default:
MOZ_CRASH("Unknown role.");
- aAtkObj->role = ATK_ROLE_UNKNOWN;
};
#undef ROLE
return aAtkObj->role;
}
AtkAttributeSet*
--- a/caps/src/nsPrincipal.cpp
+++ b/caps/src/nsPrincipal.cpp
@@ -836,17 +836,16 @@ nsExpandedPrincipal::CheckMayLoad(nsIURI
return NS_ERROR_DOM_BAD_URI;
}
NS_IMETHODIMP
nsExpandedPrincipal::GetHashValue(uint32_t* result)
{
MOZ_CRASH("extended principal should never be used as key in a hash map");
- return NS_ERROR_FAILURE;
}
NS_IMETHODIMP
nsExpandedPrincipal::GetURI(nsIURI** aURI)
{
*aURI = nullptr;
return NS_OK;
}
--- a/content/base/src/nsAttrValue.cpp
+++ b/content/base/src/nsAttrValue.cpp
@@ -304,17 +304,16 @@ nsAttrValue::SetTo(const nsAttrValue& aO
case eColor:
{
cont->mValue.mColor = otherCont->mValue.mColor;
break;
}
case eCSSStyleRule:
{
MOZ_CRASH("These should be refcounted!");
- break;
}
case eURL:
{
NS_ADDREF(cont->mValue.mURL = otherCont->mValue.mURL);
break;
}
case eImage:
{
--- a/content/base/src/nsDocument.cpp
+++ b/content/base/src/nsDocument.cpp
@@ -8469,17 +8469,16 @@ nsDocument::MaybePreLoadImage(nsIURI* ur
break;
case CORS_ANONYMOUS:
loadFlags |= imgILoader::LOAD_CORS_ANONYMOUS;
break;
case CORS_USE_CREDENTIALS:
loadFlags |= imgILoader::LOAD_CORS_USE_CREDENTIALS;
break;
default:
- /* should never happen */
MOZ_CRASH("Unknown CORS mode!");
}
// Image not in cache - trigger preload
nsRefPtr<imgRequestProxy> request;
nsresult rv =
nsContentUtils::LoadImage(uri,
this,
@@ -11143,18 +11142,17 @@ SizeOfStyleSheetsElementIncludingThis(ns
size_t
nsDocument::SizeOfExcludingThis(MallocSizeOf aMallocSizeOf) const
{
// This SizeOfExcludingThis() overrides the one from nsINode. But
// nsDocuments can only appear at the top of the DOM tree, and we use the
// specialized DocSizeOfExcludingThis() in that case. So this should never
// be called.
- MOZ_CRASH("nsDocument::SizeOfExcludingThis");
- return 0;
+ MOZ_CRASH();
}
void
nsDocument::DocSizeOfExcludingThis(nsWindowSizes* aWindowSizes) const
{
nsIDocument::DocSizeOfExcludingThis(aWindowSizes);
for (nsIContent* node = nsINode::GetFirstChild();
--- a/content/base/src/nsObjectLoadingContent.cpp
+++ b/content/base/src/nsObjectLoadingContent.cpp
@@ -2989,17 +2989,16 @@ nsObjectLoadingContent::ShouldPlay(Fallb
switch (enabledState) {
case nsIPluginTag::STATE_ENABLED:
return true;
case nsIPluginTag::STATE_CLICKTOPLAY:
return false;
}
MOZ_CRASH("Unexpected enabledState");
- return false;
}
nsIDocument*
nsObjectLoadingContent::GetContentDocument()
{
nsCOMPtr<nsIContent> thisContent =
do_QueryInterface(static_cast<nsIImageLoadingContent*>(this));
--- a/content/canvas/src/CanvasRenderingContext2D.cpp
+++ b/content/canvas/src/CanvasRenderingContext2D.cpp
@@ -2633,17 +2633,17 @@ CanvasRenderingContext2D::DrawOrMeasureT
// fall through; best we can do with the information available
case TEXT_BASELINE_ALPHABETIC:
anchorY = 0;
break;
case TEXT_BASELINE_BOTTOM:
anchorY = -fontMetrics.emDescent;
break;
default:
- MOZ_CRASH("unexpected TextBaseline");
+ MOZ_CRASH("unexpected TextBaseline");
}
processor.mPt.y += anchorY;
// correct bounding box to get it to be the correct size/position
processor.mBoundingBox.width = totalWidth;
processor.mBoundingBox.MoveBy(processor.mPt);
--- a/content/canvas/src/WebGLContextGL.cpp
+++ b/content/canvas/src/WebGLContextGL.cpp
@@ -5505,26 +5505,23 @@ WebGLTexelFormat mozilla::GetWebGLTexelF
if (format == LOCAL_GL_DEPTH_COMPONENT) {
switch (type) {
case LOCAL_GL_UNSIGNED_SHORT:
return WebGLTexelConversions::D16;
case LOCAL_GL_UNSIGNED_INT:
return WebGLTexelConversions::D32;
default:
MOZ_CRASH("Invalid WebGL texture format/type?");
- return WebGLTexelConversions::BadFormat;
}
} else if (format == LOCAL_GL_DEPTH_STENCIL) {
switch (type) {
case LOCAL_GL_UNSIGNED_INT_24_8_EXT:
return WebGLTexelConversions::D24S8;
default:
MOZ_CRASH("Invalid WebGL texture format/type?");
- NS_ABORT_IF_FALSE(false, "Coding mistake?! Should never reach this point.");
- return WebGLTexelConversions::BadFormat;
}
}
if (type == LOCAL_GL_UNSIGNED_BYTE) {
switch (format) {
case LOCAL_GL_RGBA:
return WebGLTexelConversions::RGBA8;
--- a/content/events/src/TextComposition.cpp
+++ b/content/events/src/TextComposition.cpp
@@ -136,17 +136,16 @@ TextComposition::CompositionEventDispatc
nsTextEvent textEvent(true, NS_TEXT_TEXT, mWidget);
textEvent.theText = mData;
nsIMEStateManager::DispatchCompositionEvent(mEventTarget, mPresContext,
&textEvent, &status, nullptr);
break;
}
default:
MOZ_CRASH("Unsupported event");
- break;
}
return NS_OK;
}
/******************************************************************************
* TextCompositionArray
******************************************************************************/
--- a/content/events/src/nsDOMMouseEvent.cpp
+++ b/content/events/src/nsDOMMouseEvent.cpp
@@ -137,17 +137,16 @@ nsDOMMouseEvent::InitMouseEvent(const ns
case NS_MOUSE_SCROLL_EVENT:
case NS_WHEEL_EVENT:
case NS_DRAG_EVENT:
case NS_SIMPLE_GESTURE_EVENT:
static_cast<nsInputEvent*>(mEvent)->modifiers = modifiers;
return NS_OK;
default:
MOZ_CRASH("There is no space to store the modifiers");
- return NS_ERROR_FAILURE;
}
}
already_AddRefed<nsDOMMouseEvent>
nsDOMMouseEvent::Constructor(const mozilla::dom::GlobalObject& aGlobal,
const nsAString& aType,
const mozilla::dom::MouseEventInit& aParam,
mozilla::ErrorResult& aRv)
@@ -238,17 +237,16 @@ nsDOMMouseEvent::Buttons()
case NS_MOUSE_EVENT:
case NS_MOUSE_SCROLL_EVENT:
case NS_WHEEL_EVENT:
case NS_DRAG_EVENT:
case NS_SIMPLE_GESTURE_EVENT:
return static_cast<nsMouseEvent_base*>(mEvent)->buttons;
default:
MOZ_CRASH("Tried to get mouse buttons for non-mouse event!");
- return 0;
}
}
NS_IMETHODIMP
nsDOMMouseEvent::GetRelatedTarget(nsIDOMEventTarget** aRelatedTarget)
{
NS_ENSURE_ARG_POINTER(aRelatedTarget);
*aRelatedTarget = GetRelatedTarget().get();
--- a/content/events/src/nsEventStateManager.cpp
+++ b/content/events/src/nsEventStateManager.cpp
@@ -1491,17 +1491,16 @@ nsEventStateManager::DispatchCrossProces
// Let the child process synthesize a mouse event if needed, and
// ensure we don't synthesize one in this process.
*aStatus = nsEventStatus_eConsumeNoDefault;
nsTouchEvent* touchEvent = static_cast<nsTouchEvent*>(aEvent);
return remote->SendRealTouchEvent(*touchEvent);
}
default: {
MOZ_CRASH("Attempt to send non-whitelisted event?");
- return false;
}
}
}
bool
nsEventStateManager::IsRemoteTarget(nsIContent* target) {
if (!target) {
return false;
@@ -2516,17 +2515,16 @@ nsEventStateManager::DispatchLegacyMouse
scrollDeltaX = aEvent->lineOrPageDeltaX;
scrollDeltaY = aEvent->lineOrPageDeltaY;
pixelDeltaX = RoundDown(aEvent->deltaX);
pixelDeltaY = RoundDown(aEvent->deltaY);
break;
default:
MOZ_CRASH("Invalid deltaMode value comes");
- return;
}
// Send the legacy events in following order:
// 1. Vertical scroll
// 2. Vertical pixel scroll (even if #1 isn't consumed)
// 3. Horizontal scroll (even if #1 and/or #2 are consumed)
// 4. Horizontal pixel scroll (even if #3 isn't consumed)
@@ -2843,17 +2841,16 @@ nsEventStateManager::DoScrollText(nsIScr
case nsIDOMWheelEvent::DOM_DELTA_PAGE:
origin = nsGkAtoms::pages;
break;
case nsIDOMWheelEvent::DOM_DELTA_PIXEL:
origin = nsGkAtoms::pixels;
break;
default:
MOZ_CRASH("Invalid deltaMode value comes");
- return;
}
// We shouldn't scroll more one page at once except when over one page scroll
// is allowed for the event.
nsSize pageSize = aScrollableFrame->GetPageScrollAmount();
nsIntSize devPixelPageSize(pc->AppUnitsToDevPixels(pageSize.width),
pc->AppUnitsToDevPixels(pageSize.height));
if (!WheelPrefs::GetInstance()->IsOverOnePageScrollAllowedX(aEvent) &&
@@ -2888,17 +2885,16 @@ nsEventStateManager::DoScrollText(nsIScr
case widget::WheelEvent::SCROLL_ASYNCHRONOUSELY:
mode = nsIScrollableFrame::NORMAL;
break;
case widget::WheelEvent::SCROLL_SMOOTHLY:
mode = nsIScrollableFrame::SMOOTH;
break;
default:
MOZ_CRASH("Invalid scrollType value comes");
- return;
}
nsIntPoint overflow;
aScrollableFrame->ScrollBy(actualDevPixelScrollAmount,
nsIScrollableFrame::DEVICE_PIXELS,
mode, &overflow, origin);
if (!scrollFrameWeak.IsAlive()) {
--- a/content/events/src/nsIMEStateManager.cpp
+++ b/content/events/src/nsIMEStateManager.cpp
@@ -583,17 +583,16 @@ nsIMEStateManager::NotifyIME(Notificatio
switch (aNotification) {
case NOTIFY_IME_OF_CURSOR_POS_CHANGED:
return aWidget->NotifyIME(aNotification);
case REQUEST_TO_COMMIT_COMPOSITION:
case REQUEST_TO_CANCEL_COMPOSITION:
return composition ? aWidget->NotifyIME(aNotification) : NS_OK;
default:
MOZ_CRASH("Unsupported notification");
- return NS_ERROR_INVALID_ARG;
}
MOZ_CRASH(
"Failed to handle the notification for non-synthesized composition");
}
// If the composition is synthesized events for automated tests, we should
// dispatch composition events for emulating the native composition behavior.
// NOTE: The dispatched events are discarded if it's not safe to run script.
@@ -1045,17 +1044,16 @@ nsIMEStateManager::IsEditableIMEState(ns
case widget::IMEState::ENABLED:
case widget::IMEState::PASSWORD:
return true;
case widget::IMEState::PLUGIN:
case widget::IMEState::DISABLED:
return false;
default:
MOZ_CRASH("Unknown IME enable state");
- return false;
}
}
void
nsIMEStateManager::DestroyTextStateManager()
{
if (!sTextStateObserver) {
return;
--- a/content/html/document/src/nsHTMLContentSink.cpp
+++ b/content/html/document/src/nsHTMLContentSink.cpp
@@ -658,31 +658,27 @@ SinkContext::OpenContainer(const nsIPars
if (mSink->IsMonolithicContainer(nodeType)) {
mSink->mInMonolithicContainer++;
}
// Special handling for certain tags
switch (nodeType) {
case eHTMLTag_form:
MOZ_CRASH("Must not use HTMLContentSink for forms.");
- break;
case eHTMLTag_frameset:
MOZ_CRASH("Must not use HTMLContentSink for frames.");
- break;
case eHTMLTag_noembed:
case eHTMLTag_noframes:
MOZ_CRASH("Must not use HTMLContentSink for noembed/noframes.");
- break;
case eHTMLTag_script:
case eHTMLTag_style:
MOZ_CRASH("Must not use HTMLContentSink for styles and scripts.");
- break;
case eHTMLTag_button:
case eHTMLTag_audio:
case eHTMLTag_video:
content->DoneCreatingElement();
break;
default:
@@ -779,41 +775,35 @@ SinkContext::CloseContainer(const nsHTML
DidAddContent(content);
// Special handling for certain tags
switch (nodeType) {
case eHTMLTag_noembed:
case eHTMLTag_noframes:
MOZ_CRASH("Must not use HTMLContentSink for noembed/noframes.");
- break;
case eHTMLTag_form:
MOZ_CRASH("Must not use HTMLContentSink for forms.");
- break;
case eHTMLTag_video:
case eHTMLTag_audio:
case eHTMLTag_select:
case eHTMLTag_textarea:
case eHTMLTag_object:
case eHTMLTag_applet:
case eHTMLTag_title:
content->DoneAddingChildren(HaveNotifiedForCurrentContent());
break;
case eHTMLTag_script:
MOZ_CRASH("Must not use HTMLContentSink to run scripts.");
- result = NS_ERROR_NOT_IMPLEMENTED;
- break;
case eHTMLTag_style:
MOZ_CRASH("Must not use HTMLContentSink for styles.");
- result = NS_ERROR_NOT_IMPLEMENTED;
- break;
default:
break;
}
NS_IF_RELEASE(content);
#ifdef DEBUG
@@ -851,18 +841,16 @@ SinkContext::AddLeaf(const nsIParserNode
// Add new leaf to its parent
AddLeaf(content);
// Additional processing needed once the element is in the tree
switch (nodeType) {
case eHTMLTag_meta:
MOZ_CRASH("Must not use HTMLContentSink for metas.");
- rv = NS_ERROR_NOT_IMPLEMENTED;
- break;
case eHTMLTag_input:
content->DoneCreatingElement();
break;
case eHTMLTag_menuitem:
content->DoneCreatingElement();
break;
@@ -1747,18 +1735,17 @@ HTMLContentSink::IsEnabled(int32_t aTag,
NS_IMETHODIMP
HTMLContentSink::OpenContainer(const nsIParserNode& aNode)
{
nsresult rv = NS_OK;
switch (aNode.GetNodeType()) {
case eHTMLTag_frameset:
MOZ_CRASH("Must not use HTMLContentSink for frames.");
- rv = NS_ERROR_NOT_IMPLEMENTED;
- break;
+
case eHTMLTag_head:
rv = OpenHeadContext();
if (NS_SUCCEEDED(rv)) {
rv = AddAttributes(aNode, mHead, true, mHaveSeenHead);
mHaveSeenHead = true;
}
break;
case eHTMLTag_body:
@@ -1772,49 +1759,46 @@ HTMLContentSink::OpenContainer(const nsI
if (!mNotifiedRootInsertion) {
NotifyRootInsertion();
}
ProcessOfflineManifest(mRoot);
}
break;
case eHTMLTag_form:
MOZ_CRASH("Must not use HTMLContentSink for forms.");
- rv = NS_ERROR_NOT_IMPLEMENTED;
- break;
+
default:
rv = mCurrentContext->OpenContainer(aNode);
break;
}
return rv;
}
NS_IMETHODIMP
HTMLContentSink::CloseContainer(const eHTMLTags aTag)
{
nsresult rv = NS_OK;
switch (aTag) {
case eHTMLTag_frameset:
MOZ_CRASH("Must not use HTMLContentSink for frames.");
- rv = NS_ERROR_NOT_IMPLEMENTED;
- break;
+
case eHTMLTag_head:
CloseHeadContext();
break;
case eHTMLTag_body:
rv = CloseBody();
break;
case eHTMLTag_html:
rv = CloseHTML();
break;
case eHTMLTag_form:
MOZ_CRASH("Must not use HTMLContentSink for forms.");
- rv = NS_ERROR_NOT_IMPLEMENTED;
- break;
+
default:
rv = mCurrentContext->CloseContainer(aTag);
break;
}
return rv;
}
@@ -1827,20 +1811,18 @@ HTMLContentSink::CloseMalformedContainer
NS_IMETHODIMP
HTMLContentSink::AddLeaf(const nsIParserNode& aNode)
{
nsresult rv;
nsHTMLTag nodeType = nsHTMLTag(aNode.GetNodeType());
switch (nodeType) {
case eHTMLTag_link:
- rv = NS_ERROR_NOT_IMPLEMENTED;
MOZ_CRASH("Must not use HTMLContentSink for links.");
- break;
default:
rv = mCurrentContext->AddLeaf(aNode);
break;
}
return rv;
}
--- a/content/media/DOMMediaStream.cpp
+++ b/content/media/DOMMediaStream.cpp
@@ -251,17 +251,16 @@ DOMMediaStream::CreateDOMTrack(TrackID a
mTrackTypesAvailable |= HINT_CONTENTS_AUDIO;
break;
case MediaSegment::VIDEO:
track = new VideoStreamTrack(this, aTrackID);
mTrackTypesAvailable |= HINT_CONTENTS_VIDEO;
break;
default:
MOZ_CRASH("Unhandled track type");
- return nullptr;
}
mTracks.AppendElement(track);
CheckTracksAvailable();
return track;
}
--- a/content/media/MediaStreamGraph.cpp
+++ b/content/media/MediaStreamGraph.cpp
@@ -1833,17 +1833,16 @@ MediaStream::ApplyTrackDisabling(TrackID
!i.IsEnded(); i.Next()) {
VideoChunk& chunk = *i;
chunk.SetForceBlack(true);
}
break;
}
default:
MOZ_CRASH("Unknown track type");
- break;
}
}
void
SourceMediaStream::DestroyImpl()
{
{
MutexAutoLock lock(mMutex);
--- a/content/media/encoder/MediaEncoder.cpp
+++ b/content/media/encoder/MediaEncoder.cpp
@@ -229,14 +229,13 @@ MediaEncoder::GetEncodedData(nsTArray<ns
case ENCODE_DONE:
LOG("MediaEncoder has been shutdown.");
mShutdown = true;
reloop = false;
break;
default:
MOZ_CRASH("Invalid encode state");
- break;
}
}
}
}
--- a/content/media/encoder/OpusTrackEncoder.cpp
+++ b/content/media/encoder/OpusTrackEncoder.cpp
@@ -216,17 +216,16 @@ OpusTrackEncoder::GetHeader(nsTArray<uin
mEncoderState = DATA;
break;
}
case DATA:
// No more headers.
break;
default:
MOZ_CRASH("Invalid state");
- break;
}
return NS_OK;
}
nsresult
OpusTrackEncoder::GetEncodedTrack(nsTArray<uint8_t>* aOutput,
int &aOutputDuration)
{
--- a/content/media/webaudio/MediaBufferDecoder.cpp
+++ b/content/media/webaudio/MediaBufferDecoder.cpp
@@ -435,17 +435,16 @@ MediaDecodeTask::RunNextPhase()
switch (mPhase) {
case PhaseEnum::AllocateBuffer:
MOZ_ASSERT(!NS_IsMainThread());
NS_DispatchToMainThread(this);
break;
case PhaseEnum::Decode:
case PhaseEnum::Done:
MOZ_CRASH("Invalid phase Decode");
- break;
}
}
class AutoResampler {
public:
AutoResampler()
: mResampler(nullptr)
{}
--- a/content/media/webspeech/recognition/SpeechRecognition.cpp
+++ b/content/media/webspeech/recognition/SpeechRecognition.cpp
@@ -190,17 +190,17 @@ SpeechRecognition::Transition(SpeechEven
Reset();
break;
case EVENT_RECOGNITIONSERVICE_INTERMEDIATE_RESULT:
case EVENT_RECOGNITIONSERVICE_FINAL_RESULT:
DoNothing(aEvent);
break;
case EVENT_START:
SR_LOG("STATE_STARTING: Unhandled event %s", GetName(aEvent));
- MOZ_CRASH("");
+ MOZ_CRASH();
case EVENT_COUNT:
MOZ_CRASH("Invalid event EVENT_COUNT");
}
break;
case STATE_ESTIMATING:
switch (aEvent->mType) {
case EVENT_AUDIO_DATA:
WaitForEstimation(aEvent);
@@ -216,17 +216,17 @@ SpeechRecognition::Transition(SpeechEven
case EVENT_RECOGNITIONSERVICE_ERROR:
DoNothing(aEvent);
break;
case EVENT_AUDIO_ERROR:
AbortError(aEvent);
break;
case EVENT_START:
SR_LOG("STATE_ESTIMATING: Unhandled event %d", aEvent->mType);
- MOZ_CRASH("");
+ MOZ_CRASH();
case EVENT_COUNT:
MOZ_CRASH("Invalid event EVENT_COUNT");
}
break;
case STATE_WAITING_FOR_SPEECH:
switch (aEvent->mType) {
case EVENT_AUDIO_DATA:
DetectSpeech(aEvent);
@@ -242,17 +242,17 @@ SpeechRecognition::Transition(SpeechEven
break;
case EVENT_RECOGNITIONSERVICE_INTERMEDIATE_RESULT:
case EVENT_RECOGNITIONSERVICE_FINAL_RESULT:
case EVENT_RECOGNITIONSERVICE_ERROR:
DoNothing(aEvent);
break;
case EVENT_START:
SR_LOG("STATE_STARTING: Unhandled event %s", GetName(aEvent));
- MOZ_CRASH("");
+ MOZ_CRASH();
case EVENT_COUNT:
MOZ_CRASH("Invalid event EVENT_COUNT");
}
break;
case STATE_RECOGNIZING:
switch (aEvent->mType) {
case EVENT_AUDIO_DATA:
WaitForSpeechEnd(aEvent);
@@ -268,17 +268,17 @@ SpeechRecognition::Transition(SpeechEven
AbortSilently(aEvent);
break;
case EVENT_RECOGNITIONSERVICE_FINAL_RESULT:
case EVENT_RECOGNITIONSERVICE_INTERMEDIATE_RESULT:
DoNothing(aEvent);
break;
case EVENT_START:
SR_LOG("STATE_RECOGNIZING: Unhandled aEvent %s", GetName(aEvent));
- MOZ_CRASH("");
+ MOZ_CRASH();
case EVENT_COUNT:
MOZ_CRASH("Invalid event EVENT_COUNT");
}
break;
case STATE_WAITING_FOR_RESULT:
switch (aEvent->mType) {
case EVENT_STOP:
DoNothing(aEvent);
@@ -294,17 +294,17 @@ SpeechRecognition::Transition(SpeechEven
DoNothing(aEvent);
break;
case EVENT_ABORT:
AbortSilently(aEvent);
break;
case EVENT_START:
case EVENT_RECOGNITIONSERVICE_INTERMEDIATE_RESULT:
SR_LOG("STATE_WAITING_FOR_RESULT: Unhandled aEvent %s", GetName(aEvent));
- MOZ_CRASH("");
+ MOZ_CRASH();
case EVENT_COUNT:
MOZ_CRASH("Invalid event EVENT_COUNT");
}
break;
case STATE_ABORTING:
DoNothing(aEvent);
break;
case STATE_COUNT:
--- a/content/media/webspeech/synth/ipc/SpeechSynthesisChild.cpp
+++ b/content/media/webspeech/synth/ipc/SpeechSynthesisChild.cpp
@@ -44,17 +44,16 @@ PSpeechSynthesisRequestChild*
SpeechSynthesisChild::AllocPSpeechSynthesisRequest(const nsString& aText,
const nsString& aLang,
const nsString& aUri,
const float& aVolume,
const float& aRate,
const float& aPitch)
{
MOZ_CRASH("Caller is supposed to manually construct a request!");
- return nullptr;
}
bool
SpeechSynthesisChild::DeallocPSpeechSynthesisRequest(PSpeechSynthesisRequestChild* aActor)
{
delete aActor;
return true;
}
@@ -145,25 +144,23 @@ SpeechTaskChild::SpeechTaskChild(SpeechS
{
}
NS_IMETHODIMP
SpeechTaskChild::Setup(nsISpeechTaskCallback* aCallback,
uint32_t aChannels, uint32_t aRate, uint8_t argc)
{
MOZ_CRASH("Should never be called from child");
- return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP
SpeechTaskChild::SendAudio(const JS::Value& aData, const JS::Value& aLandmarks,
JSContext* aCx)
{
MOZ_CRASH("Should never be called from child");
- return NS_ERROR_NOT_IMPLEMENTED;
}
void
SpeechTaskChild::Pause()
{
MOZ_ASSERT(mActor);
mActor->SendPause();
}
--- a/dom/audiochannel/AudioChannelService.cpp
+++ b/dom/audiochannel/AudioChannelService.cpp
@@ -564,10 +564,9 @@ AudioChannelService::GetInternalType(Aud
: AUDIO_CHANNEL_INT_PUBLICNOTIFICATION;
case AUDIO_CHANNEL_LAST:
default:
break;
}
MOZ_CRASH("unexpected audio channel type");
- return AUDIO_CHANNEL_INT_LAST;
}
--- a/dom/base/nsDOMClassInfo.cpp
+++ b/dom/base/nsDOMClassInfo.cpp
@@ -1812,28 +1812,25 @@ nsDOMClassInfo::Init()
"The number of items in sClassInfoData doesn't match the "
"number of nsIDOMClassInfo ID's, this is bad! Fix it!");
#ifdef DEBUG
for (size_t i = 0; i < eDOMClassInfoIDCount; i++) {
if (!sClassInfoData[i].u.mConstructorFptr ||
sClassInfoData[i].mDebugID != i) {
MOZ_CRASH("Class info data out of sync, you forgot to update "
- "nsDOMClassInfo.h and nsDOMClassInfo.cpp! Fix this, "
- "mozilla will not work without this fixed!");
- return NS_ERROR_NOT_INITIALIZED;
+ "nsDOMClassInfo.h and nsDOMClassInfo.cpp! Fix this, "
+ "mozilla will not work without this fixed!");
}
}
for (size_t i = 0; i < eDOMClassInfoIDCount; i++) {
if (!sClassInfoData[i].mInterfaces) {
MOZ_CRASH("Class info data without an interface list! Fix this, "
- "mozilla will not work without this fixed!");
-
- return NS_ERROR_NOT_INITIALIZED;
+ "mozilla will not work without this fixed!");
}
}
#endif
// Initialize static JSString's
DefineStaticJSVals(cx);
int32_t i;
@@ -2023,17 +2020,16 @@ nsDOMClassInfo::PostCreate(nsIXPConnectW
return NS_ERROR_UNEXPECTED;
}
NS_IMETHODIMP
nsDOMClassInfo::PostTransplant(nsIXPConnectWrappedNative *wrapper,
JSContext *cx, JSObject *obj)
{
MOZ_CRASH("nsDOMClassInfo::PostTransplant Don't call me!");
- return NS_OK;
}
NS_IMETHODIMP
nsDOMClassInfo::AddProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
JSObject *obj, jsid id, jsval *vp,
bool *_retval)
{
NS_WARNING("nsDOMClassInfo::AddProperty Don't call me!");
--- a/dom/base/nsScreen.cpp
+++ b/dom/base/nsScreen.cpp
@@ -367,17 +367,16 @@ nsScreen::MozLockOrientation(const Seque
mEventListener, /* useCapture = */ true);
return true;
}
}
// This is only for compilers that don't understand that the previous switch
// will always return.
MOZ_CRASH("unexpected lock orientation permission value");
- return false;
}
void
nsScreen::MozUnlockOrientation()
{
hal::UnlockScreenOrientation();
}
--- a/dom/bindings/PrimitiveConversions.h
+++ b/dom/bindings/PrimitiveConversions.h
@@ -89,17 +89,16 @@ template<typename T>
struct DisallowedConversion {
typedef int jstype;
typedef int intermediateType;
private:
static inline bool converter(JSContext* cx, JS::Handle<JS::Value> v,
jstype* retval) {
MOZ_CRASH("This should never be instantiated!");
- return false;
}
};
struct PrimitiveConversionTraits_smallInt {
// The output of JS::ToInt32 is determined as follows:
// 1) The value is converted to a double
// 2) Anything that's not a finite double returns 0
// 3) The double is rounded towards zero to the nearest integer
--- a/dom/bluetooth/ipc/BluetoothChild.cpp
+++ b/dom/bluetooth/ipc/BluetoothChild.cpp
@@ -113,17 +113,16 @@ BluetoothChild::RecvNotificationsStopped
Send__delete__(this);
return true;
}
PBluetoothRequestChild*
BluetoothChild::AllocPBluetoothRequest(const Request& aRequest)
{
MOZ_CRASH("Caller is supposed to manually construct a request!");
- return nullptr;
}
bool
BluetoothChild::DeallocPBluetoothRequest(PBluetoothRequestChild* aActor)
{
delete aActor;
return true;
}
--- a/dom/bluetooth/ipc/BluetoothParent.cpp
+++ b/dom/bluetooth/ipc/BluetoothParent.cpp
@@ -63,17 +63,16 @@ public:
MOZ_ASSERT(NS_IsMainThread());
mRequest = nullptr;
}
virtual bool
ParseSuccessfulReply(JS::Value* aValue) MOZ_OVERRIDE
{
MOZ_CRASH("This should never be called!");
- return false;
}
};
/*******************************************************************************
* BluetoothParent
******************************************************************************/
BluetoothParent::BluetoothParent()
@@ -228,21 +227,19 @@ BluetoothParent::RecvPBluetoothRequestCo
case Request::TConnectScoRequest:
return actor->DoRequest(aRequest.get_ConnectScoRequest());
case Request::TDisconnectScoRequest:
return actor->DoRequest(aRequest.get_DisconnectScoRequest());
case Request::TIsScoConnectedRequest:
return actor->DoRequest(aRequest.get_IsScoConnectedRequest());
default:
MOZ_CRASH("Unknown type!");
- return false;
}
MOZ_CRASH("Should never get here!");
- return false;
}
PBluetoothRequestParent*
BluetoothParent::AllocPBluetoothRequest(const Request& aRequest)
{
MOZ_ASSERT(mService);
return new BluetoothRequestParent(mService);
}
--- a/dom/bluetooth/ipc/BluetoothServiceChildProcess.cpp
+++ b/dom/bluetooth/ipc/BluetoothServiceChildProcess.cpp
@@ -190,34 +190,31 @@ BluetoothServiceChildProcess::RemoveDevi
nsresult
BluetoothServiceChildProcess::GetScoSocket(
const nsAString& aObjectPath,
bool aAuth,
bool aEncrypt,
mozilla::ipc::UnixSocketConsumer* aConsumer)
{
MOZ_CRASH("This should never be called!");
- return NS_ERROR_FAILURE;
}
nsresult
BluetoothServiceChildProcess::GetServiceChannel(const nsAString& aDeviceAddress,
const nsAString& aServiceUuid,
BluetoothProfileManagerBase* aManager)
{
MOZ_CRASH("This should never be called!");
- return NS_ERROR_FAILURE;
}
bool
BluetoothServiceChildProcess::UpdateSdpRecords(const nsAString& aDeviceAddress,
BluetoothProfileManagerBase* aManager)
{
MOZ_CRASH("This should never be called!");
- return false;
}
bool
BluetoothServiceChildProcess::SetPinCodeInternal(
const nsAString& aDeviceAddress,
const nsAString& aPinCode,
BluetoothReplyRunnable* aRunnable)
{
@@ -360,39 +357,34 @@ BluetoothServiceChildProcess::HandleShut
}
return NS_OK;
}
nsresult
BluetoothServiceChildProcess::StartInternal()
{
MOZ_CRASH("This should never be called!");
- return NS_ERROR_FAILURE;
}
nsresult
BluetoothServiceChildProcess::StopInternal()
{
MOZ_CRASH("This should never be called!");
- return NS_ERROR_FAILURE;
}
bool
BluetoothServiceChildProcess::IsEnabledInternal()
{
MOZ_CRASH("This should never be called!");
- return false;
}
bool
BluetoothServiceChildProcess::IsConnected(uint16_t aProfileId)
{
MOZ_CRASH("This should never be called!");
- return false;
}
nsresult
BluetoothServiceChildProcess::SendSinkMessage(const nsAString& aDeviceAddresses,
const nsAString& aMessage)
{
MOZ_CRASH("This should never be called!");
- return NS_ERROR_FAILURE;
}
--- a/dom/fm/FMRadio.cpp
+++ b/dom/fm/FMRadio.cpp
@@ -236,17 +236,16 @@ void FMRadio::Notify(const FMRadioOperat
case FM_RADIO_OPERATION_DISABLE:
DispatchTrustedEvent(RADIO_DIABLED_EVENT_NAME);
break;
case FM_RADIO_OPERATION_SEEK:
DispatchTrustedEvent(RADIO_SEEK_COMPLETE_EVENT_NAME);
break;
default:
MOZ_CRASH();
- return;
}
}
/* void canPlayChanged (in boolean canPlay); */
NS_IMETHODIMP FMRadio::CanPlayChanged(bool canPlay)
{
nsCOMPtr<nsIAudioManager> audioManager =
do_GetService(NS_AUDIOMANAGER_CONTRACTID);
--- a/dom/indexedDB/IDBDatabase.cpp
+++ b/dom/indexedDB/IDBDatabase.cpp
@@ -132,17 +132,16 @@ public:
return Success_NotSent;
}
virtual nsresult UnpackResponseFromParentProcess(
const ResponseValue& aResponseValue)
MOZ_OVERRIDE
{
MOZ_CRASH("Should never get here!");
- return NS_ERROR_UNEXPECTED;
}
private:
// In-params.
nsString mName;
nsString mType;
// Out-params.
@@ -865,17 +864,16 @@ NoRequestDatabaseHelper::SendResponseToC
return Success_NotSent;
}
nsresult
NoRequestDatabaseHelper::UnpackResponseFromParentProcess(
const ResponseValue& aResponseValue)
{
MOZ_CRASH("Should never get here!");
- return NS_ERROR_UNEXPECTED;
}
nsresult
NoRequestDatabaseHelper::OnSuccess()
{
NS_ASSERTION(IndexedDatabaseManager::IsMainProcess(), "Wrong process!");
return NS_OK;
}
--- a/dom/indexedDB/OpenDatabaseHelper.cpp
+++ b/dom/indexedDB/OpenDatabaseHelper.cpp
@@ -1475,17 +1475,16 @@ protected:
return Success_NotSent;
}
virtual nsresult UnpackResponseFromParentProcess(
const ResponseValue& aResponseValue)
MOZ_OVERRIDE
{
MOZ_CRASH("Should never get here!");
- return NS_ERROR_UNEXPECTED;
}
uint64_t RequestedVersion() const
{
return mRequestedVersion;
}
private:
@@ -1555,17 +1554,16 @@ protected:
return Success_NotSent;
}
virtual nsresult UnpackResponseFromParentProcess(
const ResponseValue& aResponseValue)
MOZ_OVERRIDE
{
MOZ_CRASH("Should never get here!");
- return NS_ERROR_UNEXPECTED;
}
private:
// In-params
nsRefPtr<OpenDatabaseHelper> mOpenHelper;
nsRefPtr<IDBOpenDBRequest> mOpenRequest;
uint64_t mCurrentVersion;
nsString mName;
--- a/dom/indexedDB/ipc/IndexedDBChild.cpp
+++ b/dom/indexedDB/ipc/IndexedDBChild.cpp
@@ -222,17 +222,16 @@ IndexedDBChild::DeallocPIndexedDBDatabas
delete aActor;
return true;
}
PIndexedDBDeleteDatabaseRequestChild*
IndexedDBChild::AllocPIndexedDBDeleteDatabaseRequest(const nsString& aName)
{
MOZ_CRASH("Caller is supposed to manually construct a request!");
- return NULL;
}
bool
IndexedDBChild::DeallocPIndexedDBDeleteDatabaseRequest(
PIndexedDBDeleteDatabaseRequestChild* aActor)
{
delete aActor;
return true;
@@ -645,29 +644,27 @@ IndexedDBTransactionChild::RecvComplete(
resultCode = aParams.get_AbortResult().errorCode();
if (NS_SUCCEEDED(resultCode)) {
resultCode = NS_ERROR_DOM_INDEXEDDB_ABORT_ERR;
}
break;
default:
MOZ_CRASH("Unknown union type!");
- return false;
}
FireCompleteEvent(resultCode);
return true;
}
PIndexedDBObjectStoreChild*
IndexedDBTransactionChild::AllocPIndexedDBObjectStore(
const ObjectStoreConstructorParams& aParams)
{
MOZ_CRASH("Caller is supposed to manually construct an object store!");
- return NULL;
}
bool
IndexedDBTransactionChild::DeallocPIndexedDBObjectStore(
PIndexedDBObjectStoreChild* aActor)
{
delete aActor;
return true;
@@ -756,33 +753,31 @@ IndexedDBObjectStoreChild::RecvPIndexedD
return true;
}
PIndexedDBRequestChild*
IndexedDBObjectStoreChild::AllocPIndexedDBRequest(
const ObjectStoreRequestParams& aParams)
{
MOZ_CRASH("Caller is supposed to manually construct a request!");
- return NULL;
}
bool
IndexedDBObjectStoreChild::DeallocPIndexedDBRequest(
PIndexedDBRequestChild* aActor)
{
delete aActor;
return false;
}
PIndexedDBIndexChild*
IndexedDBObjectStoreChild::AllocPIndexedDBIndex(
const IndexConstructorParams& aParams)
{
MOZ_CRASH("Caller is supposed to manually construct an index!");
- return NULL;
}
bool
IndexedDBObjectStoreChild::DeallocPIndexedDBIndex(PIndexedDBIndexChild* aActor)
{
delete aActor;
return true;
}
@@ -888,28 +883,26 @@ IndexedDBIndexChild::RecvPIndexedDBCurso
rv = mIndex->OpenCursorFromChildProcess(request, direction, aParams.key(),
aParams.objectKey(),
getter_AddRefs(cursor));
NS_ENSURE_SUCCESS(rv, false);
break;
default:
MOZ_CRASH("Unknown union type!");
- return false;
}
actor->SetCursor(cursor);
return true;
}
PIndexedDBRequestChild*
IndexedDBIndexChild::AllocPIndexedDBRequest(const IndexRequestParams& aParams)
{
MOZ_CRASH("Caller is supposed to manually construct a request!");
- return NULL;
}
bool
IndexedDBIndexChild::DeallocPIndexedDBRequest(PIndexedDBRequestChild* aActor)
{
delete aActor;
return true;
}
@@ -977,17 +970,16 @@ IndexedDBCursorChild::ActorDestroy(Actor
#endif
}
}
PIndexedDBRequestChild*
IndexedDBCursorChild::AllocPIndexedDBRequest(const CursorRequestParams& aParams)
{
MOZ_CRASH("Caller is supposed to manually construct a request!");
- return NULL;
}
bool
IndexedDBCursorChild::DeallocPIndexedDBRequest(PIndexedDBRequestChild* aActor)
{
delete aActor;
return true;
}
@@ -1030,17 +1022,16 @@ IndexedDBRequestChildBase::Disconnect()
}
}
}
bool
IndexedDBRequestChildBase::Recv__delete__(const ResponseValue& aResponse)
{
MOZ_CRASH("This should be overridden!");
- return false;
}
/*******************************************************************************
* IndexedDBObjectStoreRequestChild
******************************************************************************/
IndexedDBObjectStoreRequestChild::IndexedDBObjectStoreRequestChild(
AsyncConnectionHelper* aHelper,
@@ -1089,17 +1080,16 @@ IndexedDBObjectStoreRequestChild::Recv__
MOZ_ASSERT(mRequestType == ParamsUnionType::TCountParams);
break;
case ResponseValue::TOpenCursorResponse:
MOZ_ASSERT(mRequestType == ParamsUnionType::TOpenCursorParams);
break;
default:
MOZ_CRASH("Received invalid response parameters!");
- return false;
}
nsresult rv = mHelper->OnParentProcessRequestComplete(aResponse);
NS_ENSURE_SUCCESS(rv, false);
return true;
}
@@ -1148,17 +1138,16 @@ IndexedDBIndexRequestChild::Recv__delete
break;
case ResponseValue::TOpenCursorResponse:
MOZ_ASSERT(mRequestType == ParamsUnionType::TOpenCursorParams ||
mRequestType == ParamsUnionType::TOpenKeyCursorParams);
break;
default:
MOZ_CRASH("Received invalid response parameters!");
- return false;
}
nsresult rv = mHelper->OnParentProcessRequestComplete(aResponse);
NS_ENSURE_SUCCESS(rv, false);
return true;
}
@@ -1192,17 +1181,16 @@ IndexedDBCursorRequestChild::Recv__delet
case ResponseValue::Tnsresult:
break;
case ResponseValue::TContinueResponse:
MOZ_ASSERT(mRequestType == ParamsUnionType::TContinueParams);
break;
default:
MOZ_CRASH("Received invalid response parameters!");
- return false;
}
nsresult rv = mHelper->OnParentProcessRequestComplete(aResponse);
NS_ENSURE_SUCCESS(rv, false);
return true;
}
@@ -1278,24 +1266,22 @@ IPCOpenDatabaseHelper::UnpackResponseFro
NS_NOTREACHED("Should never get here!");
return NS_ERROR_DOM_INDEXEDDB_UNKNOWN_ERR;
}
AsyncConnectionHelper::ChildProcessSendResult
IPCOpenDatabaseHelper::SendResponseToChildProcess(nsresult aResultCode)
{
MOZ_CRASH("Don't call me!");
- return Error;
}
nsresult
IPCOpenDatabaseHelper::DoDatabaseWork(mozIStorageConnection* aConnection)
{
MOZ_CRASH("Don't call me!");
- return NS_ERROR_FAILURE;
}
nsresult
IPCOpenDatabaseHelper::GetSuccessResult(JSContext* aCx, JS::MutableHandle<JS::Value> aVal)
{
return WrapNative(aCx, NS_ISUPPORTS_CAST(EventTarget*, mDatabase),
aVal);
}
@@ -1307,24 +1293,22 @@ IPCSetVersionHelper::UnpackResponseFromP
NS_NOTREACHED("Should never get here!");
return NS_ERROR_DOM_INDEXEDDB_UNKNOWN_ERR;
}
AsyncConnectionHelper::ChildProcessSendResult
IPCSetVersionHelper::SendResponseToChildProcess(nsresult aResultCode)
{
MOZ_CRASH("Don't call me!");
- return Error;
}
nsresult
IPCSetVersionHelper::DoDatabaseWork(mozIStorageConnection* aConnection)
{
MOZ_CRASH("Don't call me!");
- return NS_ERROR_FAILURE;
}
already_AddRefed<nsIDOMEvent>
IPCSetVersionHelper::CreateSuccessEvent(mozilla::dom::EventTarget* aOwner)
{
return IDBVersionChangeEvent::CreateUpgradeNeeded(aOwner,
mOldVersion,
mRequestedVersion);
@@ -1339,31 +1323,28 @@ IPCSetVersionHelper::GetSuccessResult(JS
aVal);
}
nsresult
IPCDeleteDatabaseHelper::UnpackResponseFromParentProcess(
const ResponseValue& aResponseValue)
{
MOZ_CRASH("Don't call me!");
- return NS_ERROR_FAILURE;
}
AsyncConnectionHelper::ChildProcessSendResult
IPCDeleteDatabaseHelper::SendResponseToChildProcess(nsresult aResultCode)
{
MOZ_CRASH("Don't call me!");
- return Error;
}
nsresult
IPCDeleteDatabaseHelper::GetSuccessResult(JSContext* aCx, JS::MutableHandle<JS::Value> aVal)
{
aVal.setUndefined();
return NS_OK;
}
nsresult
IPCDeleteDatabaseHelper::DoDatabaseWork(mozIStorageConnection* aConnection)
{
MOZ_CRASH("Don't call me!");
- return NS_ERROR_FAILURE;
}
--- a/dom/indexedDB/ipc/IndexedDBParent.cpp
+++ b/dom/indexedDB/ipc/IndexedDBParent.cpp
@@ -306,17 +306,16 @@ IndexedDBDatabaseParent::HandleEvent(nsI
mOpenRequest))) {
rv = HandleRequestEvent(aEvent, type);
NS_ENSURE_SUCCESS(rv, rv);
return NS_OK;
}
MOZ_CRASH("Unexpected message!");
- return NS_ERROR_UNEXPECTED;
}
void
IndexedDBDatabaseParent::Disconnect()
{
if (mDatabase) {
mDatabase->DisconnectFromActorParent();
}
@@ -506,17 +505,16 @@ IndexedDBDatabaseParent::HandleRequestEv
databaseConcrete->SetActor(this);
mDatabase = databaseConcrete;
return NS_OK;
}
MOZ_CRASH("Unexpected message type!");
- return NS_ERROR_UNEXPECTED;
}
nsresult
IndexedDBDatabaseParent::HandleDatabaseEvent(nsIDOMEvent* aEvent,
const nsAString& aType)
{
MOZ_ASSERT(mDatabase);
MOZ_ASSERT(!aType.EqualsLiteral(ERROR_EVT_STR),
@@ -552,17 +550,16 @@ IndexedDBDatabaseParent::HandleDatabaseE
if (!SendVersionChange(oldVersion, newVersion)) {
return NS_ERROR_FAILURE;
}
return NS_OK;
}
MOZ_CRASH("Unexpected message type!");
- return NS_ERROR_UNEXPECTED;
}
void
IndexedDBDatabaseParent::ActorDestroy(ActorDestroyReason aWhy)
{
if (mDatabase) {
mDatabase->SetActor(static_cast<IndexedDBDatabaseParent*>(NULL));
mDatabase->Invalidate();
@@ -776,17 +773,16 @@ IndexedDBTransactionParent::RecvAllReque
return true;
}
bool
IndexedDBTransactionParent::RecvDeleteObjectStore(const nsString& aName)
{
MOZ_CRASH("Should be overridden, don't call me!");
- return false;
}
bool
IndexedDBTransactionParent::RecvPIndexedDBObjectStoreConstructor(
PIndexedDBObjectStoreParent* aActor,
const ObjectStoreConstructorParams& aParams)
{
if (IsDisconnected()) {
@@ -820,21 +816,19 @@ IndexedDBTransactionParent::RecvPIndexed
objectStore->SetActor(actor);
return true;
}
if (aParams.type() ==
ObjectStoreConstructorParams::TCreateObjectStoreParams) {
MOZ_CRASH("Should be overridden, don't call me!");
- return false;
}
MOZ_CRASH("Unknown param type!");
- return false;
}
PIndexedDBObjectStoreParent*
IndexedDBTransactionParent::AllocPIndexedDBObjectStore(
const ObjectStoreConstructorParams& aParams)
{
return new IndexedDBObjectStoreParent();
}
@@ -1025,21 +1019,19 @@ IndexedDBCursorParent::RecvPIndexedDBReq
}
switch (aParams.type()) {
case CursorRequestParams::TContinueParams:
return actor->Continue(aParams.get_ContinueParams());
default:
MOZ_CRASH("Unknown type!");
- return false;
}
MOZ_CRASH("Should never get here!");
- return false;
}
PIndexedDBRequestParent*
IndexedDBCursorParent::AllocPIndexedDBRequest(
const CursorRequestParams& aParams)
{
MOZ_ASSERT(mCursor);
return new IndexedDBCursorRequestParent(mCursor, aParams.type());
@@ -1082,17 +1074,16 @@ IndexedDBObjectStoreParent::ActorDestroy
mObjectStore->SetActor(static_cast<IndexedDBObjectStoreParent*>(NULL));
}
}
bool
IndexedDBObjectStoreParent::RecvDeleteIndex(const nsString& aName)
{
MOZ_CRASH("Should be overridden, don't call me!");
- return false;
}
bool
IndexedDBObjectStoreParent::RecvPIndexedDBRequestConstructor(
PIndexedDBRequestParent* aActor,
const ObjectStoreRequestParams& aParams)
{
if (IsDisconnected()) {
@@ -1135,21 +1126,19 @@ IndexedDBObjectStoreParent::RecvPIndexed
case ObjectStoreRequestParams::TCountParams:
return actor->Count(aParams.get_CountParams());
case ObjectStoreRequestParams::TOpenCursorParams:
return actor->OpenCursor(aParams.get_OpenCursorParams());
default:
MOZ_CRASH("Unknown type!");
- return false;
}
MOZ_CRASH("Should never get here!");
- return false;
}
bool
IndexedDBObjectStoreParent::RecvPIndexedDBIndexConstructor(
PIndexedDBIndexParent* aActor,
const IndexConstructorParams& aParams)
{
if (IsDisconnected()) {
@@ -1179,21 +1168,19 @@ IndexedDBObjectStoreParent::RecvPIndexed
}
index->SetActor(actor);
return true;
}
if (aParams.type() == IndexConstructorParams::TCreateIndexParams) {
MOZ_CRASH("Should be overridden, don't call me!");
- return false;
}
MOZ_CRASH("Unknown param type!");
- return false;
}
PIndexedDBRequestParent*
IndexedDBObjectStoreParent::AllocPIndexedDBRequest(
const ObjectStoreRequestParams& aParams)
{
return new IndexedDBObjectStoreRequestParent(mObjectStore, aParams.type());
}
@@ -1221,17 +1208,16 @@ IndexedDBObjectStoreParent::DeallocPInde
return true;
}
PIndexedDBCursorParent*
IndexedDBObjectStoreParent::AllocPIndexedDBCursor(
const ObjectStoreCursorConstructorParams& aParams)
{
MOZ_CRASH("Caller is supposed to manually construct a cursor!");
- return NULL;
}
bool
IndexedDBObjectStoreParent::DeallocPIndexedDBCursor(
PIndexedDBCursorParent* aActor)
{
delete aActor;
return true;
@@ -1411,21 +1397,19 @@ IndexedDBIndexParent::RecvPIndexedDBRequ
case IndexRequestParams::TOpenCursorParams:
return actor->OpenCursor(aParams.get_OpenCursorParams());
case IndexRequestParams::TOpenKeyCursorParams:
return actor->OpenKeyCursor(aParams.get_OpenKeyCursorParams());
default:
MOZ_CRASH("Unknown type!");
- return false;
}
MOZ_CRASH("Should never get here!");
- return false;
}
PIndexedDBRequestParent*
IndexedDBIndexParent::AllocPIndexedDBRequest(const IndexRequestParams& aParams)
{
return new IndexedDBIndexRequestParent(mIndex, aParams.type());
}
@@ -1436,17 +1420,16 @@ IndexedDBIndexParent::DeallocPIndexedDBR
return true;
}
PIndexedDBCursorParent*
IndexedDBIndexParent::AllocPIndexedDBCursor(
const IndexCursorConstructorParams& aParams)
{
MOZ_CRASH("Caller is supposed to manually construct a cursor!");
- return NULL;
}
bool
IndexedDBIndexParent::DeallocPIndexedDBCursor(PIndexedDBCursorParent* aActor)
{
delete aActor;
return true;
}
@@ -1568,17 +1551,16 @@ IndexedDBObjectStoreRequestParent::GetAl
IDBKeyRange::FromSerializedKeyRange(keyRangeUnion.get_KeyRange());
break;
case ipc::FIXME_Bug_521898_objectstore::OptionalKeyRange::Tvoid_t:
break;
default:
MOZ_CRASH("Unknown param type!");
- return false;
}
{
AutoSetCurrentTransaction asct(mObjectStore->Transaction());
nsresult rv = mObjectStore->GetAllInternal(keyRange, aParams.limit(),
nullptr,
getter_AddRefs(request));
@@ -1708,17 +1690,16 @@ IndexedDBObjectStoreRequestParent::Count
IDBKeyRange::FromSerializedKeyRange(keyRangeUnion.get_KeyRange());
break;
case ipc::FIXME_Bug_521898_objectstore::OptionalKeyRange::Tvoid_t:
break;
default:
MOZ_CRASH("Unknown param type!");
- return false;
}
nsRefPtr<IDBRequest> request;
{
AutoSetCurrentTransaction asct(mObjectStore->Transaction());
nsresult rv =
@@ -1748,17 +1729,16 @@ IndexedDBObjectStoreRequestParent::OpenC
IDBKeyRange::FromSerializedKeyRange(keyRangeUnion.get_KeyRange());
break;
case ipc::FIXME_Bug_521898_objectstore::OptionalKeyRange::Tvoid_t:
break;
default:
MOZ_CRASH("Unknown param type!");
- return false;
}
size_t direction = static_cast<size_t>(aParams.direction());
nsRefPtr<IDBRequest> request;
{
AutoSetCurrentTransaction asct(mObjectStore->Transaction());
@@ -1871,17 +1851,16 @@ IndexedDBIndexRequestParent::GetAll(cons
IDBKeyRange::FromSerializedKeyRange(keyRangeUnion.get_KeyRange());
break;
case ipc::FIXME_Bug_521898_index::OptionalKeyRange::Tvoid_t:
break;
default:
MOZ_CRASH("Unknown param type!");
- return false;
}
{
AutoSetCurrentTransaction asct(mIndex->ObjectStore()->Transaction());
nsresult rv = mIndex->GetAllInternal(keyRange, aParams.limit(), nullptr,
getter_AddRefs(request));
NS_ENSURE_SUCCESS(rv, false);
@@ -1911,17 +1890,16 @@ IndexedDBIndexRequestParent::GetAllKeys(
IDBKeyRange::FromSerializedKeyRange(keyRangeUnion.get_KeyRange());
break;
case ipc::FIXME_Bug_521898_index::OptionalKeyRange::Tvoid_t:
break;
default:
MOZ_CRASH("Unknown param type!");
- return false;
}
{
AutoSetCurrentTransaction asct(mIndex->ObjectStore()->Transaction());
nsresult rv = mIndex->GetAllKeysInternal(keyRange, aParams.limit(), nullptr,
getter_AddRefs(request));
NS_ENSURE_SUCCESS(rv, false);
@@ -1949,17 +1927,16 @@ IndexedDBIndexRequestParent::Count(const
IDBKeyRange::FromSerializedKeyRange(keyRangeUnion.get_KeyRange());
break;
case ipc::FIXME_Bug_521898_index::OptionalKeyRange::Tvoid_t:
break;
default:
MOZ_CRASH("Unknown param type!");
- return false;
}
nsRefPtr<IDBRequest> request;
{
AutoSetCurrentTransaction asct(mIndex->ObjectStore()->Transaction());
nsresult rv = mIndex->CountInternal(keyRange, nullptr,
@@ -1989,17 +1966,16 @@ IndexedDBIndexRequestParent::OpenCursor(
IDBKeyRange::FromSerializedKeyRange(keyRangeUnion.get_KeyRange());
break;
case ipc::FIXME_Bug_521898_objectstore::OptionalKeyRange::Tvoid_t:
break;
default:
MOZ_CRASH("Unknown param type!");
- return false;
}
size_t direction = static_cast<size_t>(aParams.direction());
nsRefPtr<IDBRequest> request;
{
AutoSetCurrentTransaction asct(mIndex->ObjectStore()->Transaction());
@@ -2031,17 +2007,16 @@ IndexedDBIndexRequestParent::OpenKeyCurs
IDBKeyRange::FromSerializedKeyRange(keyRangeUnion.get_KeyRange());
break;
case ipc::FIXME_Bug_521898_objectstore::OptionalKeyRange::Tvoid_t:
break;
default:
MOZ_CRASH("Unknown param type!");
- return false;
}
size_t direction = static_cast<size_t>(aParams.direction());
nsRefPtr<IDBRequest> request;
{
AutoSetCurrentTransaction asct(mIndex->ObjectStore()->Transaction());
@@ -2198,10 +2173,9 @@ IndexedDBDeleteDatabaseRequestParent::Se
******************************************************************************/
NS_IMPL_ISUPPORTS1(WeakEventListenerBase, nsIDOMEventListener)
NS_IMETHODIMP
WeakEventListenerBase::HandleEvent(nsIDOMEvent* aEvent)
{
MOZ_CRASH("This must be overridden!");
- return NS_ERROR_FAILURE;
}
--- a/dom/ipc/Blob.cpp
+++ b/dom/ipc/Blob.cpp
@@ -86,17 +86,16 @@ public:
}
bool
Deserialize(const InputStreamParams& aParams)
{
// See InputStreamUtils.cpp to see how deserialization of a
// RemoteInputStream is special-cased.
MOZ_CRASH("RemoteInputStream should never be deserialized");
- return false;
}
void
SetStream(nsIInputStream* aStream)
{
MOZ_ASSERT(NS_IsMainThread());
MOZ_ASSERT(aStream);
--- a/dom/ipc/ContentChild.cpp
+++ b/dom/ipc/ContentChild.cpp
@@ -842,41 +842,37 @@ ContentChild::DeallocPStorage(PStorageCh
return true;
}
PBluetoothChild*
ContentChild::AllocPBluetooth()
{
#ifdef MOZ_B2G_BT
MOZ_CRASH("No one should be allocating PBluetoothChild actors");
- return nullptr;
#else
MOZ_CRASH("No support for bluetooth on this platform!");
- return nullptr;
#endif
}
bool
ContentChild::DeallocPBluetooth(PBluetoothChild* aActor)
{
#ifdef MOZ_B2G_BT
delete aActor;
return true;
#else
MOZ_CRASH("No support for bluetooth on this platform!");
- return false;
#endif
}
PSpeechSynthesisChild*
ContentChild::AllocPSpeechSynthesis()
{
#ifdef MOZ_WEBSPEECH
MOZ_CRASH("No one should be allocating PSpeechSynthesisChild actors");
- return nullptr;
#else
return nullptr;
#endif
}
bool
ContentChild::DeallocPSpeechSynthesis(PSpeechSynthesisChild* aActor)
{
--- a/dom/ipc/ContentParent.cpp
+++ b/dom/ipc/ContentParent.cpp
@@ -1988,43 +1988,40 @@ ContentParent::AllocPBluetooth()
{
#ifdef MOZ_B2G_BT
if (!AssertAppProcessPermission(this, "bluetooth")) {
return nullptr;
}
return new mozilla::dom::bluetooth::BluetoothParent();
#else
MOZ_CRASH("No support for bluetooth on this platform!");
- return nullptr;
#endif
}
bool
ContentParent::DeallocPBluetooth(PBluetoothParent* aActor)
{
#ifdef MOZ_B2G_BT
delete aActor;
return true;
#else
MOZ_CRASH("No support for bluetooth on this platform!");
- return false;
#endif
}
bool
ContentParent::RecvPBluetoothConstructor(PBluetoothParent* aActor)
{
#ifdef MOZ_B2G_BT
nsRefPtr<BluetoothService> btService = BluetoothService::Get();
NS_ENSURE_TRUE(btService, false);
return static_cast<BluetoothParent*>(aActor)->InitWithService(btService);
#else
MOZ_CRASH("No support for bluetooth on this platform!");
- return false;
#endif
}
PSpeechSynthesisParent*
ContentParent::AllocPSpeechSynthesis()
{
#ifdef MOZ_WEBSPEECH
return new mozilla::dom::SpeechSynthesisParent();
--- a/dom/ipc/StructuredCloneUtils.cpp
+++ b/dom/ipc/StructuredCloneUtils.cpp
@@ -43,22 +43,18 @@ Read(JSContext* aCx, JSStructuredCloneRe
nsCOMPtr<nsIDOMFile> file = do_QueryInterface(closure->mBlobs[aData]);
MOZ_ASSERT(file);
#ifdef DEBUG
{
// File should not be mutable.
nsCOMPtr<nsIMutable> mutableFile = do_QueryInterface(file);
bool isMutable;
- if (NS_FAILED(mutableFile->GetMutable(&isMutable))) {
- MOZ_CRASH("GetMutable failed!");
- }
- else {
- MOZ_ASSERT(!isMutable);
- }
+ MOZ_ASSERT(NS_SUCCEEDED(mutableFile->GetMutable(&isMutable)));
+ MOZ_ASSERT(!isMutable);
}
#endif
JS::Rooted<JS::Value> wrappedFile(aCx);
JS::Rooted<JSObject*> global(aCx, JS_GetGlobalForScopeChain(aCx));
nsresult rv = nsContentUtils::WrapNative(aCx, global, file,
&NS_GET_IID(nsIDOMFile),
wrappedFile.address());
@@ -76,22 +72,18 @@ Read(JSContext* aCx, JSStructuredCloneRe
nsCOMPtr<nsIDOMBlob> blob = do_QueryInterface(closure->mBlobs[aData]);
MOZ_ASSERT(blob);
#ifdef DEBUG
{
// Blob should not be mutable.
nsCOMPtr<nsIMutable> mutableBlob = do_QueryInterface(blob);
bool isMutable;
- if (NS_FAILED(mutableBlob->GetMutable(&isMutable))) {
- MOZ_CRASH("GetMutable failed!");
- }
- else {
- MOZ_ASSERT(!isMutable);
- }
+ MOZ_ASSERT(NS_SUCCEEDED(mutableBlob->GetMutable(&isMutable)));
+ MOZ_ASSERT(!isMutable);
}
#endif
JS::Rooted<JS::Value> wrappedBlob(aCx);
JS::Rooted<JSObject*> global(aCx, JS_GetGlobalForScopeChain(aCx));
nsresult rv = nsContentUtils::WrapNative(aCx, global, blob,
&NS_GET_IID(nsIDOMBlob),
wrappedBlob.address());
--- a/dom/mobilemessage/src/MmsMessage.cpp
+++ b/dom/mobilemessage/src/MmsMessage.cpp
@@ -362,17 +362,16 @@ MmsMessage::GetDelivery(nsAString& aDeli
break;
case eDeliveryState_NotDownloaded:
aDelivery = DELIVERY_NOT_DOWNLOADED;
break;
case eDeliveryState_Unknown:
case eDeliveryState_EndGuard:
default:
MOZ_CRASH("We shouldn't get any other delivery state!");
- return NS_ERROR_UNEXPECTED;
}
return NS_OK;
}
NS_IMETHODIMP
MmsMessage::GetDeliveryStatus(JSContext* aCx, JS::Value* aDeliveryStatus)
{
@@ -405,17 +404,16 @@ MmsMessage::GetDeliveryStatus(JSContext*
statusStr = DELIVERY_STATUS_REJECTED;
break;
case eDeliveryStatus_Manual:
statusStr = DELIVERY_STATUS_MANUAL;
break;
case eDeliveryStatus_EndGuard:
default:
MOZ_CRASH("We shouldn't get any other delivery status!");
- return NS_ERROR_UNEXPECTED;
}
tempStrArray.AppendElement(statusStr);
}
JS::Rooted<JSObject*> deliveryStatusObj(aCx);
nsresult rv = nsTArrayToJSArray(aCx, tempStrArray, deliveryStatusObj.address());
NS_ENSURE_SUCCESS(rv, rv);
--- a/dom/mobilemessage/src/MobileMessageCallback.cpp
+++ b/dom/mobilemessage/src/MobileMessageCallback.cpp
@@ -88,17 +88,16 @@ MobileMessageCallback::NotifyError(int32
case nsIMobileMessageCallback::NO_SIM_CARD_ERROR:
mDOMRequest->FireError(NS_LITERAL_STRING("NoSimCardError"));
break;
case nsIMobileMessageCallback::RADIO_DISABLED_ERROR:
mDOMRequest->FireError(NS_LITERAL_STRING("RadioDisabledError"));
break;
default: // SUCCESS_NO_ERROR is handled above.
MOZ_CRASH("Should never get here!");
- return NS_ERROR_FAILURE;
}
return NS_OK;
}
NS_IMETHODIMP
MobileMessageCallback::NotifyMessageSent(nsISupports *aMessage)
{
--- a/dom/mobilemessage/src/MobileMessageCursorCallback.cpp
+++ b/dom/mobilemessage/src/MobileMessageCursorCallback.cpp
@@ -44,17 +44,16 @@ MobileMessageCursorCallback::NotifyCurso
case nsIMobileMessageCallback::UNKNOWN_ERROR:
cursor->FireError(NS_LITERAL_STRING("UnknownError"));
break;
case nsIMobileMessageCallback::INTERNAL_ERROR:
cursor->FireError(NS_LITERAL_STRING("InternalError"));
break;
default: // SUCCESS_NO_ERROR is handled above.
MOZ_CRASH("Should never get here!");
- return NS_ERROR_FAILURE;
}
return NS_OK;
}
NS_IMETHODIMP
MobileMessageCursorCallback::NotifyCursorResult(nsISupports* aResult)
{
--- a/dom/mobilemessage/src/MobileMessageThread.cpp
+++ b/dom/mobilemessage/src/MobileMessageThread.cpp
@@ -182,16 +182,15 @@ MobileMessageThread::GetLastMessageType(
aLastMessageType = MESSAGE_TYPE_SMS;
break;
case eMessageType_MMS:
aLastMessageType = MESSAGE_TYPE_MMS;
break;
case eMessageType_EndGuard:
default:
MOZ_CRASH("We shouldn't get any other message type!");
- return NS_ERROR_UNEXPECTED;
}
return NS_OK;
}
} // namespace dom
} // namespace mozilla
--- a/dom/mobilemessage/src/SmsMessage.cpp
+++ b/dom/mobilemessage/src/SmsMessage.cpp
@@ -174,17 +174,16 @@ SmsMessage::GetDelivery(nsAString& aDeli
break;
case eDeliveryState_Error:
aDelivery = DELIVERY_ERROR;
break;
case eDeliveryState_Unknown:
case eDeliveryState_EndGuard:
default:
MOZ_CRASH("We shouldn't get any other delivery state!");
- return NS_ERROR_UNEXPECTED;
}
return NS_OK;
}
NS_IMETHODIMP
SmsMessage::GetDeliveryStatus(nsAString& aDeliveryStatus)
{
@@ -199,17 +198,16 @@ SmsMessage::GetDeliveryStatus(nsAString&
aDeliveryStatus = DELIVERY_STATUS_PENDING;
break;
case eDeliveryStatus_Error:
aDeliveryStatus = DELIVERY_STATUS_ERROR;
break;
case eDeliveryStatus_EndGuard:
default:
MOZ_CRASH("We shouldn't get any other delivery status!");
- return NS_ERROR_UNEXPECTED;
}
return NS_OK;
}
NS_IMETHODIMP
SmsMessage::GetSender(nsAString& aSender)
{
@@ -247,17 +245,16 @@ SmsMessage::GetMessageClass(nsAString& a
case eMessageClass_Class2:
aMessageClass = MESSAGE_CLASS_CLASS_2;
break;
case eMessageClass_Class3:
aMessageClass = MESSAGE_CLASS_CLASS_3;
break;
default:
MOZ_CRASH("We shouldn't get any other message class!");
- return NS_ERROR_UNEXPECTED;
}
return NS_OK;
}
NS_IMETHODIMP
SmsMessage::GetTimestamp(JSContext* cx, JS::Value* aDate)
{
--- a/dom/mobilemessage/src/ipc/SmsChild.cpp
+++ b/dom/mobilemessage/src/ipc/SmsChild.cpp
@@ -26,17 +26,16 @@ CreateMessageFromMessageData(const Mobil
case MobileMessageData::TMmsMessageData:
message = new MmsMessage(aData.get_MmsMessageData());
break;
case MobileMessageData::TSmsMessageData:
message = new SmsMessage(aData.get_SmsMessageData());
break;
default:
MOZ_CRASH("Unexpected type of MobileMessageData");
- return nullptr;
}
return message.forget();
}
void
NotifyObserversWithMobileMessage(const char* aEventName,
const MobileMessageData& aData)
@@ -109,31 +108,29 @@ SmsChild::RecvNotifyDeliveryErrorMessage
NotifyObserversWithMobileMessage(kSmsDeliveryErrorObserverTopic, aData);
return true;
}
PSmsRequestChild*
SmsChild::AllocPSmsRequest(const IPCSmsRequest& aRequest)
{
MOZ_CRASH("Caller is supposed to manually construct a request!");
- return nullptr;
}
bool
SmsChild::DeallocPSmsRequest(PSmsRequestChild* aActor)
{
delete aActor;
return true;
}
PMobileMessageCursorChild*
SmsChild::AllocPMobileMessageCursor(const IPCMobileMessageCursor& aCursor)
{
MOZ_CRASH("Caller is supposed to manually construct a cursor!");
- return nullptr;
}
bool
SmsChild::DeallocPMobileMessageCursor(PMobileMessageCursorChild* aActor)
{
// MobileMessageCursorChild is refcounted, must not be freed manually.
// Originally AddRefed in SendCursorRequest() in SmsIPCService.cpp.
static_cast<MobileMessageCursorChild*>(aActor)->Release();
@@ -196,17 +193,16 @@ SmsRequestChild::Recv__delete__(const Me
case MessageReply::TReplyMarkeMessageRead:
mReplyRequest->NotifyMessageMarkedRead(aReply.get_ReplyMarkeMessageRead().read());
break;
case MessageReply::TReplyMarkeMessageReadFail:
mReplyRequest->NotifyMarkMessageReadFailed(aReply.get_ReplyMarkeMessageReadFail().error());
break;
default:
MOZ_CRASH("Received invalid response parameters!");
- return false;
}
return true;
}
/*******************************************************************************
* MobileMessageCursorChild
******************************************************************************/
@@ -239,17 +235,16 @@ MobileMessageCursorChild::RecvNotifyResu
case MobileMessageCursorData::TSmsMessageData:
result = new SmsMessage(aData.get_SmsMessageData());
break;
case MobileMessageCursorData::TThreadData:
result = new MobileMessageThread(aData.get_ThreadData());
break;
default:
MOZ_CRASH("Received invalid response parameters!");
- return false;
}
mCursorCallback->NotifyCursorResult(result);
return true;
}
bool
MobileMessageCursorChild::Recv__delete__(const int32_t& aError)
--- a/dom/mobilemessage/src/ipc/SmsParent.cpp
+++ b/dom/mobilemessage/src/ipc/SmsParent.cpp
@@ -334,17 +334,16 @@ SmsParent::RecvPSmsRequestConstructor(PS
case IPCSmsRequest::TGetMessageRequest:
return actor->DoRequest(aRequest.get_GetMessageRequest());
case IPCSmsRequest::TDeleteMessageRequest:
return actor->DoRequest(aRequest.get_DeleteMessageRequest());
case IPCSmsRequest::TMarkMessageReadRequest:
return actor->DoRequest(aRequest.get_MarkMessageReadRequest());
default:
MOZ_CRASH("Unknown type!");
- break;
}
return false;
}
PSmsRequestParent*
SmsParent::AllocPSmsRequest(const IPCSmsRequest& aRequest)
{
@@ -373,17 +372,16 @@ SmsParent::RecvPMobileMessageCursorConst
switch (aRequest.type()) {
case IPCMobileMessageCursor::TCreateMessageCursorRequest:
return actor->DoRequest(aRequest.get_CreateMessageCursorRequest());
case IPCMobileMessageCursor::TCreateThreadCursorRequest:
return actor->DoRequest(aRequest.get_CreateThreadCursorRequest());
default:
MOZ_CRASH("Unknown type!");
- break;
}
return false;
}
PMobileMessageCursorParent*
SmsParent::AllocPMobileMessageCursor(const IPCMobileMessageCursor& aRequest)
{
@@ -440,17 +438,16 @@ SmsRequestParent::DoRequest(const SendMe
NS_WARNING("SmsRequestParent: Fail to build MMS params.");
return true;
}
mmsService->Send(params, this);
}
break;
default:
MOZ_CRASH("Unknown type of SendMessageRequest!");
- return false;
}
return true;
}
bool
SmsRequestParent::DoRequest(const RetrieveMessageRequest& aRequest)
{
nsresult rv = NS_ERROR_FAILURE;
@@ -736,17 +733,16 @@ MobileMessageCursorParent::NotifyCursorR
nsCOMPtr<nsIDOMMozMobileMessageThread> iThread = do_QueryInterface(aResult);
if (iThread) {
MobileMessageThread* thread = static_cast<MobileMessageThread*>(aResult);
return SendNotifyResult(MobileMessageCursorData(thread->GetData()))
? NS_OK : NS_ERROR_FAILURE;
}
MOZ_CRASH("Received invalid response parameters!");
- return NS_ERROR_FAILURE;
}
NS_IMETHODIMP
MobileMessageCursorParent::NotifyCursorDone()
{
return NotifyCursorError(nsIMobileMessageCallback::SUCCESS_NO_ERROR);
}
--- a/dom/network/src/TCPSocketParent.cpp
+++ b/dom/network/src/TCPSocketParent.cpp
@@ -108,17 +108,16 @@ TCPSocketParent::RecvData(const Sendable
case SendableData::TnsString:
rv = mIntermediary->SendString(aData.get_nsString());
NS_ENSURE_SUCCESS(rv, true);
break;
default:
MOZ_CRASH("unexpected SendableData type");
- return false;
}
return true;
}
bool
TCPSocketParent::RecvClose()
{
NS_ENSURE_TRUE(mSocket, true);
--- a/dom/power/PowerManagerService.cpp
+++ b/dom/power/PowerManagerService.cpp
@@ -115,28 +115,26 @@ PowerManagerService::SyncProfile()
NS_IMETHODIMP
PowerManagerService::Reboot()
{
StartForceQuitWatchdog(eHalShutdownMode_Reboot, mWatchdogTimeoutSecs);
// To synchronize any unsaved user data before rebooting.
SyncProfile();
hal::Reboot();
MOZ_CRASH("hal::Reboot() shouldn't return");
- return NS_OK;
}
NS_IMETHODIMP
PowerManagerService::PowerOff()
{
StartForceQuitWatchdog(eHalShutdownMode_PowerOff, mWatchdogTimeoutSecs);
// To synchronize any unsaved user data before powering off.
SyncProfile();
hal::PowerOff();
MOZ_CRASH("hal::PowerOff() shouldn't return");
- return NS_OK;
}
NS_IMETHODIMP
PowerManagerService::Restart()
{
// FIXME/bug 796826 this implementation is currently gonk-specific,
// because it relies on the Gonk to initialize the Gecko processes to
// restart B2G. It's better to do it here to have a real "restart".
@@ -149,17 +147,16 @@ PowerManagerService::Restart()
// To synchronize any unsaved user data before restarting.
SyncProfile();
#ifdef XP_UNIX
sync();
#endif
_exit(0);
MOZ_CRASH("_exit() shouldn't return");
- return NS_OK;
}
NS_IMETHODIMP
PowerManagerService::AddWakeLockListener(nsIDOMMozWakeLockListener *aListener)
{
if (mWakeLockListeners.Contains(aListener))
return NS_OK;
--- a/dom/workers/XMLHttpRequest.cpp
+++ b/dom/workers/XMLHttpRequest.cpp
@@ -259,17 +259,16 @@ ConvertStringToResponseType(const nsAStr
for (size_t index = 0; index < ArrayLength(strings) - 1; index++) {
if (aString.EqualsASCII(strings[index].value, strings[index].length)) {
return static_cast<XMLHttpRequestResponseType>(index);
}
}
MOZ_CRASH("Don't know anything about this response type!");
- return XMLHttpRequestResponseType::_empty;
}
enum
{
STRING_abort = 0,
STRING_error,
STRING_load,
STRING_loadstart,
--- a/extensions/cookie/nsPermissionManager.cpp
+++ b/extensions/cookie/nsPermissionManager.cpp
@@ -284,17 +284,16 @@ DeleteFromMozHostListener::
DeleteFromMozHostListener(nsPermissionManager* aManager)
: mManager(aManager)
{
}
NS_IMETHODIMP DeleteFromMozHostListener::HandleResult(mozIStorageResultSet *)
{
MOZ_CRASH("Should not get any results");
- return NS_OK;
}
NS_IMETHODIMP DeleteFromMozHostListener::HandleError(mozIStorageError *)
{
// Errors are handled in |HandleCompletion|
return NS_OK;
}
--- a/gfx/gl/GLContext.cpp
+++ b/gfx/gl/GLContext.cpp
@@ -1734,17 +1734,16 @@ GLContext::ReadPixelsIntoImageSurface(gf
case gfxASurface::ImageFormatRGB16_565:
destPixelSize = 2;
destFormat = LOCAL_GL_RGB;
destType = LOCAL_GL_UNSIGNED_SHORT_5_6_5_REV;
break;
default:
MOZ_CRASH("Bad format.");
- return;
}
MOZ_ASSERT(dest->Stride() == dest->Width() * destPixelSize);
GLenum readFormat = destFormat;
GLenum readType = destType;
bool needsTempSurf = !GetActualReadFormats(this,
destFormat, destType,
readFormat, readType);
@@ -1768,17 +1767,16 @@ GLContext::ReadPixelsIntoImageSurface(gf
case LOCAL_GL_RGB: {
MOZ_ASSERT(readPixelSize == 2);
MOZ_ASSERT(readType == LOCAL_GL_UNSIGNED_SHORT_5_6_5_REV);
readFormatGFX = gfxASurface::ImageFormatRGB16_565;
break;
}
default: {
MOZ_CRASH("Bad read format.");
- return;
}
}
switch (readType) {
case LOCAL_GL_UNSIGNED_BYTE: {
MOZ_ASSERT(readFormat == LOCAL_GL_RGBA);
readPixelSize = 4;
break;
@@ -1790,17 +1788,16 @@ GLContext::ReadPixelsIntoImageSurface(gf
}
case LOCAL_GL_UNSIGNED_SHORT_5_6_5_REV: {
MOZ_ASSERT(readFormat == LOCAL_GL_RGB);
readPixelSize = 2;
break;
}
default: {
MOZ_CRASH("Bad read type.");
- return;
}
}
tempSurf = new gfxImageSurface(dest->GetSize(), readFormatGFX, false);
readSurf = tempSurf;
} else {
readPixelSize = destPixelSize;
readSurf = dest;
--- a/gfx/gl/GLContextProviderGLX.cpp
+++ b/gfx/gl/GLContextProviderGLX.cpp
@@ -103,17 +103,16 @@ GLXLibrary::EnsureInitialized(LibType li
#ifdef __OpenBSD__
libGLfilename = "libGL.so";
#else
libGLfilename = "libGL.so.1";
#endif
break;
default:
MOZ_CRASH("Invalid GLX library type.");
- return false;
}
ScopedGfxFeatureReporter reporter(libGLfilename, forceFeatureReport);
mOGLLibrary = PR_LoadLibrary(libGLfilename);
if (!mOGLLibrary) {
NS_WARNING("Couldn't load OpenGL shared library.");
return false;
}
--- a/gfx/gl/GLScreenBuffer.cpp
+++ b/gfx/gl/GLScreenBuffer.cpp
@@ -90,20 +90,17 @@ GLScreenBuffer::BindAsFramebuffer(GLCont
case LOCAL_GL_READ_FRAMEBUFFER_EXT:
if (!gl->HasExt_FramebufferBlit())
NS_WARNING("READ_FRAMEBUFFER requested but unavailable.");
gl->raw_fBindFramebuffer(LOCAL_GL_READ_FRAMEBUFFER_EXT, readFB);
break;
default:
- // In case we got a bad target.
MOZ_CRASH("Bad `target` for BindFramebuffer.");
- gl->raw_fBindFramebuffer(target, 0);
- break;
}
}
void
GLScreenBuffer::BindFB(GLuint fb)
{
GLuint drawFB = DrawFB();
GLuint readFB = ReadFB();
@@ -573,17 +570,16 @@ ReadBuffer::Create(GLContext* gl,
case AttachmentType::GLTexture:
colorTex = surf->Texture();
break;
case AttachmentType::GLRenderbuffer:
colorRB = surf->Renderbuffer();
break;
default:
MOZ_CRASH("Unknown attachment type?");
- return nullptr;
}
MOZ_ASSERT(colorTex || colorRB);
GLuint fb = 0;
gl->fGenFramebuffers(1, &fb);
gl->AttachBuffersToFB(colorTex, colorRB, depthRB, stencilRB, fb);
MOZ_ASSERT(gl->IsFramebufferComplete(fb));
@@ -623,17 +619,16 @@ ReadBuffer::Attach(SharedSurface_GL* sur
case AttachmentType::GLTexture:
colorTex = surf->Texture();
break;
case AttachmentType::GLRenderbuffer:
colorRB = surf->Renderbuffer();
break;
default:
MOZ_CRASH("Unknown attachment type?");
- return;
}
mGL->AttachBuffersToFB(colorTex, colorRB, 0, 0, mFB);
MOZ_ASSERT(mGL->IsFramebufferComplete(mFB));
}
mSurf = surf;
}
--- a/gfx/gl/SharedSurface.h
+++ b/gfx/gl/SharedSurface.h
@@ -101,22 +101,20 @@ public:
return mHasAlpha;
}
// For use when AttachType is correct.
virtual GLuint Texture() const {
MOZ_ASSERT(AttachType() == AttachmentType::GLTexture);
MOZ_CRASH("Did you forget to override this function?");
- return 0;
}
virtual GLuint Renderbuffer() const {
MOZ_ASSERT(AttachType() == AttachmentType::GLRenderbuffer);
MOZ_CRASH("Did you forget to override this function?");
- return 0;
}
};
} /* namespace gfx */
} /* namespace mozilla */
#endif /* SHARED_SURFACE_H_ */
--- a/gfx/gl/SharedSurfaceGL.cpp
+++ b/gfx/gl/SharedSurfaceGL.cpp
@@ -57,17 +57,16 @@ SharedSurface_GL::Copy(SharedSurface_GL*
} else if (dest->AttachType() == AttachmentType::GLRenderbuffer) {
GLuint destRB = dest->Renderbuffer();
ScopedFramebufferForRenderbuffer destWrapper(gl, destRB);
gl->BlitFramebufferToFramebuffer(0, destWrapper.FB(),
src->Size(), dest->Size());
} else {
MOZ_CRASH("Unhandled dest->AttachType().");
- return;
}
if (srcNeedsUnlock)
src->UnlockProd();
if (origNeedsRelock)
origLocked->LockProd();
@@ -95,17 +94,16 @@ SharedSurface_GL::Copy(SharedSurface_GL*
} else if (src->AttachType() == AttachmentType::GLRenderbuffer) {
GLuint srcRB = src->Renderbuffer();
ScopedFramebufferForRenderbuffer srcWrapper(gl, srcRB);
gl->BlitFramebufferToFramebuffer(srcWrapper.FB(), 0,
src->Size(), dest->Size());
} else {
MOZ_CRASH("Unhandled src->AttachType().");
- return;
}
if (destNeedsUnlock)
dest->UnlockProd();
if (origNeedsRelock)
origLocked->LockProd();
@@ -133,17 +131,16 @@ SharedSurface_GL::Copy(SharedSurface_GL*
gl->BlitTextureToFramebuffer(srcTex, destWrapper.FB(),
src->Size(), dest->Size());
return;
}
MOZ_CRASH("Unhandled dest->AttachType().");
- return;
}
if (src->AttachType() == AttachmentType::GLRenderbuffer) {
GLuint srcRB = src->Renderbuffer();
ScopedFramebufferForRenderbuffer srcWrapper(gl, srcRB);
if (dest->AttachType() == AttachmentType::GLTexture) {
GLuint destTex = dest->Texture();
@@ -160,21 +157,19 @@ SharedSurface_GL::Copy(SharedSurface_GL*
gl->BlitFramebufferToFramebuffer(srcWrapper.FB(), destWrapper.FB(),
src->Size(), dest->Size());
return;
}
MOZ_CRASH("Unhandled dest->AttachType().");
- return;
}
MOZ_CRASH("Unhandled src->AttachType().");
- return;
}
void
SharedSurface_GL::LockProd()
{
MOZ_ASSERT(!mIsLocked);
LockProdImpl();
@@ -260,17 +255,16 @@ SharedSurface_Basic::Create(GLContext* g
format = gfxASurface::ImageFormatRGB24;
break;
case LOCAL_GL_RGBA:
case LOCAL_GL_RGBA8:
format = gfxASurface::ImageFormatARGB32;
break;
default:
MOZ_CRASH("Unhandled Tex format.");
- return nullptr;
}
return new SharedSurface_Basic(gl, size, hasAlpha, format, tex);
}
SharedSurface_Basic::SharedSurface_Basic(GLContext* gl,
const gfxIntSize& size,
bool hasAlpha,
gfxASurface::gfxImageFormat format,
--- a/gfx/gl/SurfaceStream.cpp
+++ b/gfx/gl/SurfaceStream.cpp
@@ -39,17 +39,16 @@ SurfaceStream::CreateForType(SurfaceStre
case SurfaceStreamType::TripleBuffer_Copy:
return new SurfaceStream_TripleBuffer_Copy(prevStream);
case SurfaceStreamType::TripleBuffer_Async:
return new SurfaceStream_TripleBuffer_Async(prevStream);
case SurfaceStreamType::TripleBuffer:
return new SurfaceStream_TripleBuffer(prevStream);
default:
MOZ_CRASH("Invalid Type.");
- return nullptr;
}
}
void
SurfaceStream::New(SurfaceFactory* factory, const gfxIntSize& size,
SharedSurface*& surf)
{
MOZ_ASSERT(!surf);
--- a/gfx/layers/Layers.h
+++ b/gfx/layers/Layers.h
@@ -1773,23 +1773,23 @@ private:
* Clients will usually want to Connect/Clear() on each transaction to
* avoid difficulties managing memory across multiple layer subtrees.
*/
class RefLayer : public ContainerLayer {
friend class LayerManager;
private:
virtual void InsertAfter(Layer* aChild, Layer* aAfter)
- { MOZ_CRASH("no"); }
+ { MOZ_CRASH(); }
virtual void RemoveChild(Layer* aChild)
- { MOZ_CRASH("no"); }
+ { MOZ_CRASH(); }
virtual void RepositionChild(Layer* aChild, Layer* aAfter)
- { MOZ_CRASH("no"); }
+ { MOZ_CRASH(); }
using ContainerLayer::SetFrameMetrics;
public:
/**
* CONSTRUCTION PHASE ONLY
* Set the ID of the layer's referent.
*/
--- a/gfx/layers/client/CompositableClient.h
+++ b/gfx/layers/client/CompositableClient.h
@@ -69,17 +69,16 @@ public:
MOZ_COUNT_CTOR(CompositableClient);
}
virtual ~CompositableClient();
virtual TextureInfo GetTextureInfo() const
{
MOZ_CRASH("This method should be overridden");
- return TextureInfo();
}
LayersBackend GetCompositorBackendType() const;
TemporaryRef<TextureClient>
CreateTextureClient(TextureClientType aTextureClientType);
virtual void SetDescriptorFromReply(TextureIdentifier aTextureId,
--- a/gfx/layers/client/ContentClient.h
+++ b/gfx/layers/client/ContentClient.h
@@ -137,17 +137,16 @@ public:
uint32_t aFlags,
gfxASurface**) MOZ_OVERRIDE;
virtual TemporaryRef<gfx::DrawTarget>
CreateDTBuffer(ContentType aType, const nsIntRect& aRect, uint32_t aFlags);
virtual TextureInfo GetTextureInfo() const MOZ_OVERRIDE
{
MOZ_CRASH("Should not be called on non-remote ContentClient");
- return TextureInfo();
}
private:
BasicLayerManager* mManager;
};
/**
* A ContentClientRemote backed by a ThebesLayerBuffer.
--- a/gfx/layers/composite/CompositableHost.cpp
+++ b/gfx/layers/composite/CompositableHost.cpp
@@ -68,17 +68,16 @@ CompositableHost::Create(const TextureIn
case BUFFER_CONTENT_DIRECT:
result = new ContentHostDoubleBuffered(aTextureInfo);
return result;
case BUFFER_CONTENT_INC:
result = new ContentHostIncremental(aTextureInfo);
return result;
default:
MOZ_CRASH("Unknown CompositableType");
- return nullptr;
}
}
void
CompositableHost::DumpTextureHost(FILE* aFile, TextureHost* aTexture)
{
if (!aTexture) {
return;
--- a/gfx/layers/composite/TextureHost.cpp
+++ b/gfx/layers/composite/TextureHost.cpp
@@ -55,17 +55,16 @@ TextureHost::CreateTextureHost(SurfaceDe
aTextureFlags);
#endif
case LAYERS_BASIC:
return CreateBasicTextureHost(aDescriptorType,
aTextureHostFlags,
aTextureFlags);
default:
MOZ_CRASH("Couldn't create texture host");
- return nullptr;
}
}
TextureHost::TextureHost()
: mFlags(0)
, mBuffer(nullptr)
, mFormat(gfx::FORMAT_UNKNOWN)
--- a/gfx/layers/d3d10/CanvasLayerD3D10.cpp
+++ b/gfx/layers/d3d10/CanvasLayerD3D10.cpp
@@ -166,17 +166,16 @@ CanvasLayerD3D10::UpdateSurface()
mTexture->Unmap(0);
mSRView = mUploadSRView;
break;
}
default:
MOZ_CRASH("Unhandled SharedSurfaceType.");
- return;
}
} else if (mSurface) {
RECT r;
r.left = 0;
r.top = 0;
r.right = mBounds.width;
r.bottom = mBounds.height;
--- a/gfx/layers/opengl/CanvasLayerOGL.cpp
+++ b/gfx/layers/opengl/CanvasLayerOGL.cpp
@@ -219,17 +219,16 @@ CanvasLayerOGL::UpdateSurface()
}
case SharedSurfaceType::GLTextureShare: {
SharedSurface_GLTexture* textureSurf = SharedSurface_GLTexture::Cast(surf);
mTexture = textureSurf->Texture();
break;
}
default:
MOZ_CRASH("Unacceptable SharedSurface type.");
- return;
}
} else {
nothingToShow = true;
}
} else if (mCanvasSurface) {
#ifdef XP_MACOSX
if (mDrawTarget && mDrawTarget->GetNativeSurface(gfx::NATIVE_SURFACE_CGCONTEXT_ACCELERATED)) {
if (!mTexture) {
@@ -241,17 +240,16 @@ CanvasLayerOGL::UpdateSurface()
}
mDrawTarget->Flush();
return;
}
#endif
updatedSurface = mCanvasSurface;
} else {
MOZ_CRASH("Unhandled canvas layer type.");
- return;
}
if (updatedSurface) {
mOGLManager->MakeCurrent();
mLayerProgram = gl()->UploadSurfaceToTexture(updatedSurface,
mBounds,
mUploadTexture,
true,//false,
--- a/gfx/layers/opengl/GLManager.cpp
+++ b/gfx/layers/opengl/GLManager.cpp
@@ -74,13 +74,12 @@ GLManager::CreateGLManager(LayerManager*
return new GLManagerCompositor(static_cast<CompositorOGL*>(
static_cast<LayerManagerComposite*>(aManager)->GetCompositor()));
} else {
return nullptr;
}
}
MOZ_CRASH("Cannot create GLManager for non-GL layer manager");
- return nullptr;
}
}
}
--- a/gfx/layers/opengl/TextureHostOGL.cpp
+++ b/gfx/layers/opengl/TextureHostOGL.cpp
@@ -111,17 +111,16 @@ FormatFromShaderType(ShaderProgramType a
case RGBXLayerProgramType:
return FORMAT_R8G8B8X8;
case BGRALayerProgramType:
return FORMAT_B8G8R8A8;
case BGRXLayerProgramType:
return FORMAT_B8G8R8X8;
default:
MOZ_CRASH("Unsupported texture shader type");
- return FORMAT_UNKNOWN;
}
}
TextureImageTextureHostOGL::~TextureImageTextureHostOGL()
{
MOZ_COUNT_DTOR(TextureImageTextureHostOGL);
if (mTexture && mTexture->InUpdate()) {
mTexture->EndUpdate();
@@ -431,17 +430,16 @@ SurfaceStreamHostOGL::Lock()
}
case SharedSurfaceType::Basic: {
toUpload = SharedSurface_Basic::Cast(sharedSurf)->GetData();
MOZ_ASSERT(toUpload);
break;
}
default:
MOZ_CRASH("Invalid SharedSurface type.");
- return false;
}
if (toUpload) {
// mBounds seems to end up as (0,0,0,0) a lot, so don't use it?
nsIntSize size(toUpload->GetSize());
nsIntRect rect(nsIntPoint(0,0), size);
nsIntRegion bounds(rect);
mShaderProgram = mGL->UploadSurfaceToTexture(toUpload,
--- a/gfx/thebes/gfxRect.h
+++ b/gfx/thebes/gfxRect.h
@@ -91,27 +91,27 @@ struct gfxRect :
gfxPoint CCWCorner(mozilla::css::Side side) const {
switch (side) {
case NS_SIDE_TOP: return TopLeft();
case NS_SIDE_RIGHT: return TopRight();
case NS_SIDE_BOTTOM: return BottomRight();
case NS_SIDE_LEFT: return BottomLeft();
}
- MOZ_CRASH("Incomplet switch");
+ MOZ_CRASH("Incomplete switch");
}
gfxPoint CWCorner(mozilla::css::Side side) const {
switch (side) {
case NS_SIDE_TOP: return TopRight();
case NS_SIDE_RIGHT: return BottomRight();
case NS_SIDE_BOTTOM: return BottomLeft();
case NS_SIDE_LEFT: return TopLeft();
}
- MOZ_CRASH("Incomplet switch");
+ MOZ_CRASH("Incomplete switch");
}
/* Conditions this border to Cairo's max coordinate space.
* The caller can check IsEmpty() after Condition() -- if it's TRUE,
* the caller can possibly avoid doing any extra rendering.
*/
void Condition();
--- a/hal/gonk/GonkDiskSpaceWatcher.cpp
+++ b/hal/gonk/GonkDiskSpaceWatcher.cpp
@@ -70,17 +70,16 @@ public:
~GonkDiskSpaceWatcher() {};
virtual void OnFileCanReadWithoutBlocking(int aFd);
// We should never write to the fanotify fd.
virtual void OnFileCanWriteWithoutBlocking(int aFd)
{
MOZ_CRASH("Must not write to fanotify fd");
- MOZ_CRASH();
}
void DoStart();
void DoStop();
private:
void NotifyUpdate();
--- a/hal/linux/LinuxPower.cpp
+++ b/hal/linux/LinuxPower.cpp
@@ -62,19 +62,17 @@ QuitHard(hal::ShutdownMode aMode)
// If we can't SIGKILL our process group, something is badly
// wrong. Trying to deliver a catch-able signal to ourselves can
// invoke signal handlers and might cause problems. So try
// _exit() and hope we go away.
_exit(1);
break;
default:
MOZ_CRASH();
- break;
}
- MOZ_CRASH();
}
// Function to complusively shut down the system with a given mode when timeout.
static void*
ForceQuitWatchdog(void* aParamPtr)
{
watchdogParam_t* paramPtr = reinterpret_cast<watchdogParam_t*>(aParamPtr);
if (paramPtr->timeoutSecs > 0 && paramPtr->timeoutSecs <= 30) {
--- a/ipc/glue/FileDescriptor.cpp
+++ b/ipc/glue/FileDescriptor.cpp
@@ -106,17 +106,16 @@ FileDescriptor::ShareTo(const FileDescri
return base::FileDescriptor(newHandle, /* auto_close */ true);
}
NS_WARNING("Failed to duplicate file handle for other process!");
}
return base::FileDescriptor();
#endif
MOZ_CRASH("Must not get here!");
- return PickleType();
}
// static
bool
FileDescriptor::IsValid(PlatformHandleType aHandle)
{
return aHandle != INVALID_HANDLE;
}
--- a/ipc/glue/URIUtils.cpp
+++ b/ipc/glue/URIUtils.cpp
@@ -75,17 +75,17 @@ SerializeURI(nsIURI* aURI,
if (scheme.EqualsASCII(entry.string, entry.length)) {
allowed = true;
break;
}
}
if (!allowed) {
MOZ_CRASH("All IPDL URIs must be serializable or an allowed "
- "scheme!");
+ "scheme!");
}
GenericURIParams params;
if (NS_FAILED(aURI->GetSpec(params.spec())) ||
NS_FAILED(aURI->GetOriginCharset(params.charset()))) {
MOZ_CRASH("This must never fail!");
}
--- a/ipc/ril/Ril.cpp
+++ b/ipc/ril/Ril.cpp
@@ -151,17 +151,16 @@ RilConnector::SetUp(int aFd)
// Nothing to do here.
return true;
}
void
RilConnector::GetSocketAddr(const sockaddr_any& aAddr,
nsAString& aAddrStr)
{
- // Unused.
MOZ_CRASH("This should never be called!");
}
} // anonymous namespace
namespace mozilla {
namespace ipc {
--- a/js/public/RootingAPI.h
+++ b/js/public/RootingAPI.h
@@ -884,22 +884,20 @@ template <typename T> class MaybeRooted<
{
public:
typedef T HandleType;
typedef FakeRooted<T> RootType;
typedef FakeMutableHandle<T> MutableHandleType;
static inline JS::Handle<T> toHandle(HandleType v) {
MOZ_ASSUME_NOT_REACHED("Bad conversion");
- return JS::Handle<T>::fromMarkedLocation(NULL);
}
static inline JS::MutableHandle<T> toMutableHandle(MutableHandleType v) {
MOZ_ASSUME_NOT_REACHED("Bad conversion");
- return JS::MutableHandle<T>::fromMarkedLocation(NULL);
}
};
} /* namespace js */
namespace JS {
template <typename T> template <typename S>
--- a/js/src/assembler/jit/ExecutableAllocator.h
+++ b/js/src/assembler/jit/ExecutableAllocator.h
@@ -157,17 +157,17 @@ private:
m_freePtr += n;
switch (kind) {
case ION_CODE: m_ionCodeBytes += n; break;
case BASELINE_CODE: m_baselineCodeBytes += n; break;
case ASMJS_CODE: m_asmJSCodeBytes += n; break;
case REGEXP_CODE: m_regexpCodeBytes += n; break;
case OTHER_CODE: m_otherCodeBytes += n; break;
- default: MOZ_ASSUME_NOT_REACHED("bad code kind"); break;
+ default: MOZ_ASSUME_NOT_REACHED("bad code kind");
}
return result;
}
size_t available() const {
JS_ASSERT(m_end >= m_freePtr);
return m_end - m_freePtr;
}
--- a/js/src/builtin/Intl.cpp
+++ b/js/src/builtin/Intl.cpp
@@ -71,42 +71,37 @@ using icu::NumberingSystem;
* and return error codes. Signatures adapted from ICU header files locid.h,
* numsys.h, ucal.h, ucol.h, udat.h, udatpg.h, uenum.h, unum.h; see the ICU
* directory for license.
*/
static int32_t
u_strlen(const UChar *s)
{
- MOZ_NOT_REACHED("u_strlen: Intl API disabled");
- return 0;
+ MOZ_ASSUME_NOT_REACHED("u_strlen: Intl API disabled");
}
struct UEnumeration;
static int32_t
uenum_count(UEnumeration *en, UErrorCode *status)
{
- MOZ_NOT_REACHED("uenum_count: Intl API disabled");
- *status = U_UNSUPPORTED_ERROR;
- return 0;
+ MOZ_ASSUME_NOT_REACHED("uenum_count: Intl API disabled");
}
static const char *
uenum_next(UEnumeration *en, int32_t *resultLength, UErrorCode *status)
{
- MOZ_NOT_REACHED("uenum_next: Intl API disabled");
- *status = U_UNSUPPORTED_ERROR;
- return NULL;
+ MOZ_ASSUME_NOT_REACHED("uenum_next: Intl API disabled");
}
static void
uenum_close(UEnumeration *en)
{
- MOZ_NOT_REACHED("uenum_close: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("uenum_close: Intl API disabled");
}
struct UCollator;
enum UColAttribute {
UCOL_ALTERNATE_HANDLING,
UCOL_CASE_FIRST,
UCOL_CASE_LEVEL,
@@ -131,55 +126,55 @@ enum UCollationResult {
UCOL_EQUAL = 0,
UCOL_GREATER = 1,
UCOL_LESS = -1
};
static int32_t
ucol_countAvailable(void)
{
- MOZ_NOT_REACHED("ucol_countAvailable: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucol_countAvailable: Intl API disabled");
}
static const char *
ucol_getAvailable(int32_t localeIndex)
{
- MOZ_NOT_REACHED("ucol_getAvailable: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucol_getAvailable: Intl API disabled");
}
static UCollator *
ucol_open(const char *loc, UErrorCode *status)
{
- MOZ_NOT_REACHED("ucol_open: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucol_open: Intl API disabled");
}
static void
ucol_setAttribute(UCollator *coll, UColAttribute attr, UColAttributeValue value, UErrorCode *status)
{
- MOZ_NOT_REACHED("ucol_setAttribute: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucol_setAttribute: Intl API disabled");
}
static UCollationResult
ucol_strcoll(const UCollator *coll, const UChar *source, int32_t sourceLength,
const UChar *target, int32_t targetLength)
{
- MOZ_NOT_REACHED("ucol_strcoll: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucol_strcoll: Intl API disabled");
}
static void
ucol_close(UCollator *coll)
{
- MOZ_NOT_REACHED("ucol_close: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucol_close: Intl API disabled");
}
static UEnumeration *
ucol_getKeywordValuesForLocale(const char *key, const char *locale, UBool commonlyUsed,
UErrorCode *status)
{
- MOZ_NOT_REACHED("ucol_getKeywordValuesForLocale: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucol_getKeywordValuesForLocale: Intl API disabled");
}
struct UParseError;
struct UFieldPosition;
typedef void *UNumberFormat;
enum UNumberFormatStyle {
UNUM_DECIMAL = 1,
@@ -206,195 +201,195 @@ enum UNumberFormatAttribute {
enum UNumberFormatTextAttribute {
UNUM_CURRENCY_CODE,
};
static int32_t
unum_countAvailable(void)
{
- MOZ_NOT_REACHED("unum_countAvailable: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("unum_countAvailable: Intl API disabled");
}
static const char *
unum_getAvailable(int32_t localeIndex)
{
- MOZ_NOT_REACHED("unum_getAvailable: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("unum_getAvailable: Intl API disabled");
}
static UNumberFormat *
unum_open(UNumberFormatStyle style, const UChar *pattern, int32_t patternLength,
const char *locale, UParseError *parseErr, UErrorCode *status)
{
- MOZ_NOT_REACHED("unum_open: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("unum_open: Intl API disabled");
}
static void
unum_setAttribute(UNumberFormat *fmt, UNumberFormatAttribute attr, int32_t newValue)
{
- MOZ_NOT_REACHED("unum_setAttribute: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("unum_setAttribute: Intl API disabled");
}
static int32_t
unum_formatDouble(const UNumberFormat *fmt, double number, UChar *result,
int32_t resultLength, UFieldPosition *pos, UErrorCode *status)
{
- MOZ_NOT_REACHED("unum_formatDouble: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("unum_formatDouble: Intl API disabled");
}
static void
unum_close(UNumberFormat *fmt)
{
- MOZ_NOT_REACHED("unum_close: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("unum_close: Intl API disabled");
}
static void
unum_setTextAttribute(UNumberFormat *fmt, UNumberFormatTextAttribute tag, const UChar *newValue,
int32_t newValueLength, UErrorCode *status)
{
- MOZ_NOT_REACHED("unum_setTextAttribute: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("unum_setTextAttribute: Intl API disabled");
}
class Locale {
public:
Locale(const char *language, const char *country = 0, const char *variant = 0,
const char *keywordsAndValues = 0);
};
Locale::Locale(const char *language, const char *country, const char *variant,
const char *keywordsAndValues)
{
- MOZ_NOT_REACHED("Locale::Locale: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("Locale::Locale: Intl API disabled");
}
class NumberingSystem {
public:
static NumberingSystem *createInstance(const Locale &inLocale, UErrorCode &status);
const char *getName();
};
NumberingSystem *
NumberingSystem::createInstance(const Locale &inLocale, UErrorCode &status)
{
- MOZ_NOT_REACHED("NumberingSystem::createInstance: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("NumberingSystem::createInstance: Intl API disabled");
}
const char *
NumberingSystem::getName()
{
- MOZ_NOT_REACHED("NumberingSystem::getName: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("NumberingSystem::getName: Intl API disabled");
}
typedef void *UCalendar;
enum UCalendarType {
UCAL_TRADITIONAL,
UCAL_DEFAULT = UCAL_TRADITIONAL,
UCAL_GREGORIAN
};
static UCalendar *
ucal_open(const UChar *zoneID, int32_t len, const char *locale,
UCalendarType type, UErrorCode *status)
{
- MOZ_NOT_REACHED("ucal_open: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucal_open: Intl API disabled");
}
static const char *
ucal_getType(const UCalendar *cal, UErrorCode *status)
{
- MOZ_NOT_REACHED("ucal_getType: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucal_getType: Intl API disabled");
}
static UEnumeration *
ucal_getKeywordValuesForLocale(const char *key, const char *locale,
UBool commonlyUsed, UErrorCode *status)
{
- MOZ_NOT_REACHED("ucal_getKeywordValuesForLocale: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucal_getKeywordValuesForLocale: Intl API disabled");
}
static void
ucal_close(UCalendar *cal)
{
- MOZ_NOT_REACHED("ucal_close: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucal_close: Intl API disabled");
}
typedef void *UDateTimePatternGenerator;
static UDateTimePatternGenerator *
udatpg_open(const char *locale, UErrorCode *pErrorCode)
{
- MOZ_NOT_REACHED("udatpg_open: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("udatpg_open: Intl API disabled");
}
static int32_t
udatpg_getBestPattern(UDateTimePatternGenerator *dtpg, const UChar *skeleton,
int32_t length, UChar *bestPattern, int32_t capacity,
UErrorCode *pErrorCode)
{
- MOZ_NOT_REACHED("udatpg_getBestPattern: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("udatpg_getBestPattern: Intl API disabled");
}
static void
udatpg_close(UDateTimePatternGenerator *dtpg)
{
- MOZ_NOT_REACHED("udatpg_close: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("udatpg_close: Intl API disabled");
}
typedef void *UCalendar;
typedef void *UDateFormat;
enum UDateFormatStyle {
UDAT_PATTERN = -2,
UDAT_IGNORE = UDAT_PATTERN
};
static int32_t
udat_countAvailable(void)
{
- MOZ_NOT_REACHED("udat_countAvailable: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("udat_countAvailable: Intl API disabled");
}
static const char *
udat_getAvailable(int32_t localeIndex)
{
- MOZ_NOT_REACHED("udat_getAvailable: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("udat_getAvailable: Intl API disabled");
}
static UDateFormat *
udat_open(UDateFormatStyle timeStyle, UDateFormatStyle dateStyle, const char *locale,
const UChar *tzID, int32_t tzIDLength, const UChar *pattern,
int32_t patternLength, UErrorCode *status)
{
- MOZ_NOT_REACHED("udat_open: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("udat_open: Intl API disabled");
}
static const UCalendar *
udat_getCalendar(const UDateFormat *fmt)
{
- MOZ_NOT_REACHED("udat_getCalendar: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("udat_getCalendar: Intl API disabled");
}
static void
ucal_setGregorianChange(UCalendar *cal, UDate date, UErrorCode *pErrorCode)
{
- MOZ_NOT_REACHED("ucal_setGregorianChange: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("ucal_setGregorianChange: Intl API disabled");
}
static int32_t
udat_format(const UDateFormat *format, UDate dateToFormat, UChar *result,
int32_t resultLength, UFieldPosition *position, UErrorCode *status)
{
- MOZ_NOT_REACHED("udat_format: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("udat_format: Intl API disabled");
}
static void
udat_close(UDateFormat *format)
{
- MOZ_NOT_REACHED("udat_close: Intl API disabled");
+ MOZ_ASSUME_NOT_REACHED("udat_close: Intl API disabled");
}
#endif
/******************** Common to Intl constructors ********************/
static bool
--- a/js/src/builtin/TestingFunctions.cpp
+++ b/js/src/builtin/TestingFunctions.cpp
@@ -485,17 +485,17 @@ GCState(JSContext *cx, unsigned argc, js
gc::State globalState = cx->runtime()->gcIncrementalState;
if (globalState == gc::NO_INCREMENTAL)
state = "none";
else if (globalState == gc::MARK)
state = "mark";
else if (globalState == gc::SWEEP)
state = "sweep";
else
- MOZ_NOT_REACHED("Unobserveable global GC state");
+ MOZ_ASSUME_NOT_REACHED("Unobserveable global GC state");
JSString *str = JS_NewStringCopyZ(cx, state);
if (!str)
return false;
*vp = StringValue(str);
return true;
}
--- a/js/src/ctypes/CTypes.cpp
+++ b/js/src/ctypes/CTypes.cpp
@@ -2565,17 +2565,16 @@ ImplicitConvert(JSContext* cx,
break;
}
return TypeError(cx, "struct", val);
}
case TYPE_void_t:
case TYPE_function:
MOZ_ASSUME_NOT_REACHED("invalid type");
- return false;
}
return true;
}
// Convert jsval 'val' to a C binary representation of CType 'targetType',
// storing the result in 'buffer'. This function is more forceful than
// ImplicitConvert.
@@ -2638,17 +2637,16 @@ ExplicitConvert(JSContext* cx, HandleVal
case TYPE_array:
case TYPE_struct:
// ImplicitConvert is sufficient. Re-throw the exception it generated.
JS_SetPendingException(cx, ex);
return false;
case TYPE_void_t:
case TYPE_function:
MOZ_ASSUME_NOT_REACHED("invalid type");
- return false;
}
return true;
}
// Given a CType 'typeObj', generate a string describing the C type declaration
// corresponding to 'typeObj'. For instance, the CType constructed from
// 'ctypes.int32_t.ptr.array(4).ptr.ptr' will result in the type string
// 'int32_t*(**)[4]'.
@@ -2811,17 +2809,16 @@ BuildTypeSource(JSContext* cx,
case ABI_STDCALL:
AppendString(result, "ctypes.stdcall_abi, ");
break;
case ABI_WINAPI:
AppendString(result, "ctypes.winapi_abi, ");
break;
case INVALID_ABI:
MOZ_ASSUME_NOT_REACHED("invalid abi");
- break;
}
// Recursively build the source string describing the function return and
// argument types.
BuildTypeSource(cx, fninfo->mReturnType, true, result);
if (fninfo->mArgTypes.length() > 0) {
AppendString(result, ", [");
@@ -3056,17 +3053,16 @@ BuildDataSource(JSContext* cx,
if (isImplicit)
AppendString(result, "}");
break;
}
case TYPE_void_t:
MOZ_ASSUME_NOT_REACHED("invalid type");
- break;
}
return true;
}
/*******************************************************************************
** JSAPI callback function implementations
*******************************************************************************/
@@ -5459,17 +5455,16 @@ FunctionType::BuildSymbolName(JSString*
// mangling is done.
AppendString(result, name);
#endif
break;
}
case INVALID_ABI:
MOZ_ASSUME_NOT_REACHED("invalid abi");
- break;
}
}
static FunctionInfo*
NewFunctionInfo(JSContext* cx,
jsval abiType,
jsval returnType,
jsval* argTypes,
--- a/js/src/frontend/BytecodeEmitter.cpp
+++ b/js/src/frontend/BytecodeEmitter.cpp
@@ -1620,17 +1620,16 @@ CheckSideEffects(JSContext *cx, Bytecode
case PNK_ELEM:
/* All these delete addressing modes have effects too. */
*answer = true;
return true;
default:
return CheckSideEffects(cx, bce, pn2, answer);
}
MOZ_ASSUME_NOT_REACHED("We have a returning default case");
- return false;
}
case PNK_TYPEOF:
case PNK_VOID:
case PNK_NOT:
case PNK_BITNOT:
if (pn->isOp(JSOP_NOT)) {
/* ! does not convert its operand via toString or valueOf. */
@@ -1644,17 +1643,16 @@ CheckSideEffects(JSContext *cx, Bytecode
* effects. Of the remaining unary-arity node types, we can't
* easily prove that the operand never denotes an object with a
* toString or valueOf method.
*/
*answer = true;
return true;
}
MOZ_ASSUME_NOT_REACHED("We have a returning default case");
- return false;
case PN_NAME:
/*
* Take care to avoid trying to bind a label name (labels, both for
* statements and property values in object initialisers, have pn_op
* defaulted to JSOP_NOP).
*/
if (pn->isKind(PNK_NAME) && !pn->isOp(JSOP_NOP)) {
--- a/js/src/frontend/ParseNode.cpp
+++ b/js/src/frontend/ParseNode.cpp
@@ -377,25 +377,23 @@ Parser<FullParseHandler>::cloneParseTree
pn->setUsed(opn->isUsed());
switch (pn->getArity()) {
#define NULLCHECK(e) JS_BEGIN_MACRO if (!(e)) return NULL; JS_END_MACRO
case PN_CODE:
if (pn->getKind() == PNK_MODULE) {
MOZ_ASSUME_NOT_REACHED("module nodes cannot be cloned");
- return NULL;
- } else {
- NULLCHECK(pn->pn_funbox =
- newFunctionBox(opn->pn_funbox->function(), pc, opn->pn_funbox->strict));
- NULLCHECK(pn->pn_body = cloneParseTree(opn->pn_body));
- pn->pn_cookie = opn->pn_cookie;
- pn->pn_dflags = opn->pn_dflags;
- pn->pn_blockid = opn->pn_blockid;
}
+ NULLCHECK(pn->pn_funbox =
+ newFunctionBox(opn->pn_funbox->function(), pc, opn->pn_funbox->strict));
+ NULLCHECK(pn->pn_body = cloneParseTree(opn->pn_body));
+ pn->pn_cookie = opn->pn_cookie;
+ pn->pn_dflags = opn->pn_dflags;
+ pn->pn_blockid = opn->pn_blockid;
break;
case PN_LIST:
pn->makeEmpty();
for (ParseNode *opn2 = opn->pn_head; opn2; opn2 = opn2->pn_next) {
ParseNode *pn2;
NULLCHECK(pn2 = cloneParseTree(opn2));
pn->append(pn2);
--- a/js/src/frontend/Parser.cpp
+++ b/js/src/frontend/Parser.cpp
@@ -184,17 +184,16 @@ ParseContext<FullParseHandler>::define(J
dn->pn_dflags |= (PND_LET | PND_BOUND);
JS_ASSERT(dn->pn_cookie.level() == staticLevel); /* see bindLet */
if (!decls_.addShadow(name, dn))
return false;
break;
default:
MOZ_ASSUME_NOT_REACHED("unexpected kind");
- break;
}
return true;
}
template <>
bool
ParseContext<SyntaxParseHandler>::define(JSContext *cx, HandlePropertyName name, Node pn,
@@ -3971,17 +3970,16 @@ Parser<FullParseHandler>::forStatement()
case PNK_NAME:
/* Beware 'for (arguments in ...)' with or without a 'var'. */
pn2->markAsAssigned();
break;
#if JS_HAS_DESTRUCTURING
case PNK_ASSIGN:
MOZ_ASSUME_NOT_REACHED("forStatement TOK_ASSIGN");
- break;
case PNK_ARRAY:
case PNK_OBJECT:
if (versionNumber() == JSVERSION_1_7) {
/*
* Destructuring for-in requires [key, value] enumeration
* in JS1.7.
*/
@@ -6652,17 +6650,16 @@ Parser<ParseHandler>::primaryExpr(TokenK
if (op == JSOP_INITPROP) {
assignType = VALUE;
} else if (op == JSOP_INITPROP_GETTER) {
assignType = GET;
} else if (op == JSOP_INITPROP_SETTER) {
assignType = SET;
} else {
MOZ_ASSUME_NOT_REACHED("bad opcode in object initializer");
- assignType = VALUE; /* try to error early */
}
AtomIndexAddPtr p = seen.lookupForAdd(atom);
if (p) {
jsatomid index = p.value();
AssignmentType oldAssignType = AssignmentType(index);
if ((oldAssignType & assignType) &&
(oldAssignType != VALUE || assignType != VALUE || pc->sc->needStrictChecks()))
--- a/js/src/gc/Statistics.cpp
+++ b/js/src/gc/Statistics.cpp
@@ -246,17 +246,17 @@ ExplainReason(JS::gcreason::Reason reaso
{
switch (reason) {
#define SWITCH_REASON(name) \
case JS::gcreason::name: \
return #name;
GCREASONS(SWITCH_REASON)
default:
- MOZ_NOT_REACHED("bad GC reason");
+ MOZ_ASSUME_NOT_REACHED("bad GC reason");
#undef SWITCH_REASON
}
}
static double
t(int64_t t)
{
return double(t) / PRMJ_USEC_PER_MSEC;
--- a/js/src/gc/StoreBuffer.cpp
+++ b/js/src/gc/StoreBuffer.cpp
@@ -65,17 +65,17 @@ StoreBuffer::WholeCellEdges::mark(JSTrac
if (kind <= JSTRACE_OBJECT) {
MarkChildren(trc, static_cast<JSObject *>(tenured));
return;
}
#ifdef JS_ION
JS_ASSERT(kind == JSTRACE_IONCODE);
static_cast<ion::IonCode *>(tenured)->trace(trc);
#else
- MOZ_NOT_REACHED("Only objects can be in the wholeCellBuffer if IonMonkey is disabled.");
+ MOZ_ASSUME_NOT_REACHED("Only objects can be in the wholeCellBuffer if IonMonkey is disabled.");
#endif
}
/*** MonoTypeBuffer ***/
/* How full we allow a store buffer to become before we request a MinorGC. */
const static double HighwaterRatio = 7.0 / 8.0;
--- a/js/src/ion/AsmJS.cpp
+++ b/js/src/ion/AsmJS.cpp
@@ -408,33 +408,31 @@ class Type
case Unsigned:
case Intish:
return MIRType_Int32;
case Void:
case Unknown:
return MIRType_None;
}
MOZ_ASSUME_NOT_REACHED("Invalid Type");
- return MIRType_None;
}
const char *toChars() const {
switch (which_) {
case Double: return "double";
case Doublish: return "doublish";
case Fixnum: return "fixnum";
case Int: return "int";
case Signed: return "signed";
case Unsigned: return "unsigned";
case Intish: return "intish";
case Void: return "void";
case Unknown: return "unknown";
}
MOZ_ASSUME_NOT_REACHED("Invalid Type");
- return "";
}
};
// Represents the subset of Type that can be used as the return type of a
// function.
class RetType
{
public:
@@ -464,42 +462,39 @@ class RetType
}
AsmJSModule::ReturnType toModuleReturnType() const {
switch (which_) {
case Void: return AsmJSModule::Return_Void;
case Signed: return AsmJSModule::Return_Int32;
case Double: return AsmJSModule::Return_Double;
}
MOZ_ASSUME_NOT_REACHED("Unexpected return type");
- return AsmJSModule::Return_Void;
}
MIRType toMIRType() const {
switch (which_) {
case Void: return MIRType_None;
case Signed: return MIRType_Int32;
case Double: return MIRType_Double;
}
MOZ_ASSUME_NOT_REACHED("Unexpected return type");
- return MIRType_None;
}
bool operator==(RetType rhs) const { return which_ == rhs.which_; }
bool operator!=(RetType rhs) const { return which_ != rhs.which_; }
};
// Implements <: (subtype) operator when the rhs is an RetType
static inline bool
operator<=(Type lhs, RetType rhs)
{
switch (rhs.which()) {
case RetType::Signed: return lhs.isSigned();
case RetType::Double: return lhs == Type::Double;
case RetType::Void: return lhs == Type::Void;
}
MOZ_ASSUME_NOT_REACHED("Unexpected rhs type");
- return false;
}
// Represents the subset of Type that can be used as a variable or
// argument's type. Note: AsmJSCoercion and VarType are kept separate to
// make very clear the signed/int distinction: a coercion may explicitly sign
// an *expression* but, when stored as a variable, this signedness information
// is explicitly thrown away by the asm.js type system. E.g., in
//
@@ -563,17 +558,16 @@ class VarType
static inline bool
operator<=(Type lhs, VarType rhs)
{
switch (rhs.which()) {
case VarType::Int: return lhs.isInt();
case VarType::Double: return lhs.isDouble();
}
MOZ_ASSUME_NOT_REACHED("Unexpected rhs type");
- return false;
}
// Passed from parent expressions to child expressions to indicate if and how
// the child expression's result will be coerced. While most type checking
// occurs bottom-up (with child expressions returning the type of the result
// and parents checking these types), FFI calls naturally want to know the
// parent's context to determine the appropriate result type. If a parent
// passes NoCoercion to an FFI all, then the FFI's return type will be "Void"
@@ -767,17 +761,16 @@ TypedArrayLoadType(ArrayBufferView::View
case ArrayBufferView::TYPE_UINT32:
return Type::Intish;
case ArrayBufferView::TYPE_FLOAT32:
case ArrayBufferView::TYPE_FLOAT64:
return Type::Doublish;
default:;
}
MOZ_ASSUME_NOT_REACHED("Unexpected array type");
- return Type();
}
enum ArrayStoreEnum {
ArrayStore_Intish,
ArrayStore_Doublish
};
static ArrayStoreEnum
@@ -792,17 +785,16 @@ TypedArrayStoreType(ArrayBufferView::Vie
case ArrayBufferView::TYPE_UINT32:
return ArrayStore_Intish;
case ArrayBufferView::TYPE_FLOAT32:
case ArrayBufferView::TYPE_FLOAT64:
return ArrayStore_Doublish;
default:;
}
MOZ_ASSUME_NOT_REACHED("Unexpected array type");
- return ArrayStore_Doublish;
}
/*****************************************************************************/
typedef Vector<PropertyName*,1> LabelVector;
typedef Vector<MBasicBlock*,8> BlockVector;
// ModuleCompiler encapsulates the compilation of an entire asm.js module. Over
@@ -3859,17 +3851,16 @@ IsValidIntMultiplyConstant(ParseNode *ex
return false;
case NumLit::BigUnsigned:
case NumLit::Double:
case NumLit::OutOfRangeInt:
return false;
}
MOZ_ASSUME_NOT_REACHED("Bad literal");
- return false;
}
static bool
CheckMultiply(FunctionCompiler &f, ParseNode *star, MDefinition **def, Type *type)
{
JS_ASSERT(star->isKind(PNK_STAR));
ParseNode *lhs = BinaryLeft(star);
ParseNode *rhs = BinaryRight(star);
--- a/js/src/ion/BaselineFrameInfo.cpp
+++ b/js/src/ion/BaselineFrameInfo.cpp
@@ -44,17 +44,16 @@ FrameInfo::sync(StackValue *val)
case StackValue::Register:
masm.pushValue(val->reg());
break;
case StackValue::Constant:
masm.pushValue(val->constant());
break;
default:
MOZ_ASSUME_NOT_REACHED("Invalid kind");
- break;
}
val->setStack();
}
void
FrameInfo::syncStack(uint32_t uses)
{
--- a/js/src/ion/BaselineIC.cpp
+++ b/js/src/ion/BaselineIC.cpp
@@ -1432,17 +1432,16 @@ DoTypeUpdateFallback(JSContext *cx, Base
id = NameToId(ScopeCoordinateName(cx, script, pc));
else
id = NameToId(script->getName(pc));
types::AddTypePropertyId(cx, obj, id, value);
break;
}
default:
MOZ_ASSUME_NOT_REACHED("Invalid stub");
- return false;
}
return stub->addUpdateStubForValue(cx, script, obj, id, value);
}
typedef bool (*DoTypeUpdateFallbackFn)(JSContext *, BaselineFrame *, ICUpdatedStub *, HandleValue,
HandleValue);
const VMFunction DoTypeUpdateFallbackInfo =
@@ -2460,17 +2459,16 @@ DoBinaryArithFallback(JSContext *cx, Bas
}
case JSOP_URSH: {
if (!UrshOperation(cx, script, pc, lhs, rhs, ret.address()))
return false;
break;
}
default:
MOZ_ASSUME_NOT_REACHED("Unhandled baseline arith op");
- return false;
}
if (ret.isDouble())
stub->setSawDoubleResult();
// Check to see if a new stub should be generated.
if (stub->numOptimizedStubs() >= ICBinaryArith_Fallback::MAX_OPTIMIZED_STUBS) {
// TODO: Discard all stubs in this IC and replace with inert megamorphic stub.
@@ -2779,17 +2777,16 @@ ICBinaryArith_Double::Compiler::generate
masm.setupUnalignedABICall(2, R0.scratchReg());
masm.passABIArg(FloatReg0);
masm.passABIArg(FloatReg1);
masm.callWithABI(JS_FUNC_TO_DATA_PTR(void *, NumberMod), MacroAssembler::DOUBLE);
JS_ASSERT(ReturnFloatReg == FloatReg0);
break;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected op");
- return false;
}
masm.boxDouble(FloatReg0, R0);
EmitReturnFromIC(masm);
// Failure case - jump to next stub
masm.bind(&failure);
EmitStubGuardFailure(masm);
@@ -2860,17 +2857,16 @@ ICBinaryArith_BooleanWithInt32::Compiler
case JSOP_BITAND: {
masm.andPtr(rhsReg, lhsReg);
masm.tagValue(JSVAL_TYPE_INT32, lhsReg, R0);
EmitReturnFromIC(masm);
break;
}
default:
MOZ_ASSUME_NOT_REACHED("Unhandled op for BinaryArith_BooleanWithInt32.");
- return false;
}
// Failure case - jump to next stub
masm.bind(&failure);
EmitStubGuardFailure(masm);
return true;
}
@@ -2923,17 +2919,16 @@ ICBinaryArith_DoubleWithInt32::Compiler:
case JSOP_BITXOR:
masm.xorPtr(intReg, intReg2);
break;
case JSOP_BITAND:
masm.andPtr(intReg, intReg2);
break;
default:
MOZ_ASSUME_NOT_REACHED("Unhandled op for BinaryArith_DoubleWithInt32.");
- return false;
}
masm.tagValue(JSVAL_TYPE_INT32, intReg2, R0);
EmitReturnFromIC(masm);
// Failure case - jump to next stub
masm.bind(&failure);
EmitStubGuardFailure(masm);
return true;
@@ -2965,17 +2960,16 @@ DoUnaryArithFallback(JSContext *cx, Base
break;
}
case JSOP_NEG:
if (!NegOperation(cx, script, pc, val, res))
return false;
break;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected op");
- return false;
}
if (res.isDouble())
stub->setSawDoubleResult();
if (stub->numOptimizedStubs() >= ICUnaryArith_Fallback::MAX_OPTIMIZED_STUBS) {
// TODO: Discard/replace stubs.
return true;
--- a/js/src/ion/BaselineIC.h
+++ b/js/src/ion/BaselineIC.h
@@ -540,17 +540,16 @@ class ICStub
static const char *KindString(Kind k) {
switch(k) {
#define DEF_KIND_STR(kindName) case kindName: return #kindName;
IC_STUB_KIND_LIST(DEF_KIND_STR)
#undef DEF_KIND_STR
default:
MOZ_ASSUME_NOT_REACHED("Invalid kind.");
- return "INVALID_KIND";
}
}
enum Trait {
Regular = 0x0,
Fallback = 0x1,
Monitored = 0x2,
MonitoredFallback = 0x3,
--- a/js/src/ion/BaselineJIT.cpp
+++ b/js/src/ion/BaselineJIT.cpp
@@ -486,17 +486,16 @@ BaselineScript::icEntryFromPCOffset(uint
if (icEntry(i).isForOp())
return icEntry(i);
}
for (size_t i = mid+1; i < numICEntries() && icEntry(i).pcOffset() == pcOffset; i++) {
if (icEntry(i).isForOp())
return icEntry(i);
}
MOZ_ASSUME_NOT_REACHED("Invalid PC offset for IC entry.");
- return icEntry(mid);
}
ICEntry &
BaselineScript::icEntryFromPCOffset(uint32_t pcOffset, ICEntry *prevLookedUpEntry)
{
// Do a linear forward search from the last queried PC offset, or fallback to a
// binary search if the last offset is too far away.
if (prevLookedUpEntry && pcOffset >= prevLookedUpEntry->pcOffset() &&
@@ -632,17 +631,16 @@ BaselineScript::nativeCodeForPC(JSScript
*slotInfo = PCMappingSlotInfo(b & ~0x80);
return method_->raw() + nativeOffset;
}
curPC += GetBytecodeLength(curPC);
}
MOZ_ASSUME_NOT_REACHED("Invalid pc");
- return NULL;
}
jsbytecode *
BaselineScript::pcForReturnOffset(JSScript *script, uint32_t nativeOffset)
{
JS_ASSERT(script->baselineScript() == this);
JS_ASSERT(nativeOffset < method_->instructionsSize());
@@ -677,17 +675,16 @@ BaselineScript::pcForReturnOffset(JSScri
if (curNativeOffset == nativeOffset)
return curPC;
curPC += GetBytecodeLength(curPC);
}
MOZ_ASSUME_NOT_REACHED("Invalid pc");
- return NULL;
}
jsbytecode *
BaselineScript::pcForReturnAddress(JSScript *script, uint8_t *nativeAddress)
{
JS_ASSERT(script->baselineScript() == this);
JS_ASSERT(nativeAddress >= method_->raw());
JS_ASSERT(nativeAddress < method_->raw() + method_->instructionsSize());
--- a/js/src/ion/CodeGenerator.cpp
+++ b/js/src/ion/CodeGenerator.cpp
@@ -3584,17 +3584,16 @@ CodeGenerator::visitBinaryV(LBinaryV *li
case JSOP_MOD:
return callVM(ModInfo, lir);
case JSOP_URSH:
return callVM(UrshInfo, lir);
default:
MOZ_ASSUME_NOT_REACHED("Unexpected binary op");
- return false;
}
}
typedef bool (*StringCompareFn)(JSContext *, HandleString, HandleString, JSBool *);
static const VMFunction stringsEqualInfo =
FunctionInfo<StringCompareFn>(ion::StringsEqual<true>);
static const VMFunction stringsNotEqualInfo =
FunctionInfo<StringCompareFn>(ion::StringsEqual<false>);
@@ -3732,17 +3731,16 @@ CodeGenerator::visitCompareVM(LCompareVM
case JSOP_GT:
return callVM(GtInfo, lir);
case JSOP_GE:
return callVM(GeInfo, lir);
default:
MOZ_ASSUME_NOT_REACHED("Unexpected compare op");
- return false;
}
case ParallelExecution:
switch (lir->mir()->jsop()) {
case JSOP_EQ:
return callVM(ParLooselyEqInfo, lir);
case JSOP_STRICTEQ:
@@ -3763,17 +3761,16 @@ CodeGenerator::visitCompareVM(LCompareVM
case JSOP_GT:
return callVM(ParGtInfo, lir);
case JSOP_GE:
return callVM(ParGeInfo, lir);
default:
MOZ_ASSUME_NOT_REACHED("Unexpected compare op");
- return false;
}
}
MOZ_ASSUME_NOT_REACHED("Unexpected exec mode");
}
bool
CodeGenerator::visitIsNullOrLikeUndefined(LIsNullOrLikeUndefined *lir)
@@ -6068,17 +6065,16 @@ CodeGenerator::visitBitOpV(LBitOpV *lir)
case JSOP_LSH:
return callVM(BitLhsInfo, lir);
case JSOP_RSH:
return callVM(BitRhsInfo, lir);
default:
break;
}
MOZ_ASSUME_NOT_REACHED("unexpected bitop");
- return false;
}
class OutOfLineTypeOfV : public OutOfLineCodeBase<CodeGenerator>
{
LTypeOfV *ins_;
public:
OutOfLineTypeOfV(LTypeOfV *ins)
--- a/js/src/ion/CompactBuffer.h
+++ b/js/src/ion/CompactBuffer.h
@@ -38,17 +38,16 @@ class CompactBufferReader
JS_ASSERT(shift < 32);
byte = readByte();
val |= (uint32_t(byte) >> 1) << shift;
shift += 7;
if (!(byte & 1))
return val;
}
MOZ_ASSUME_NOT_REACHED("unreachable");
- return 0;
}
public:
CompactBufferReader(const uint8_t *start, const uint8_t *end)
: buffer_(start),
end_(end)
{ }
inline CompactBufferReader(const CompactBufferWriter &writer);
--- a/js/src/ion/ExecutionModeInlines.h
+++ b/js/src/ion/ExecutionModeInlines.h
@@ -15,28 +15,26 @@ namespace ion {
static inline bool
HasIonScript(JSScript *script, ExecutionMode cmode)
{
switch (cmode) {
case SequentialExecution: return script->hasIonScript();
case ParallelExecution: return script->hasParallelIonScript();
}
MOZ_ASSUME_NOT_REACHED("No such execution mode");
- return false;
}
static inline IonScript *
GetIonScript(JSScript *script, ExecutionMode cmode)
{
switch (cmode) {
case SequentialExecution: return script->maybeIonScript();
case ParallelExecution: return script->maybeParallelIonScript();
}
MOZ_ASSUME_NOT_REACHED("No such execution mode");
- return NULL;
}
static inline void
SetIonScript(JSScript *script, ExecutionMode cmode, IonScript *ionScript)
{
switch (cmode) {
case SequentialExecution: script->setIonScript(ionScript); return;
case ParallelExecution: script->setParallelIonScript(ionScript); return;
@@ -74,39 +72,36 @@ CanIonCompile(JSFunction *fun, Execution
static inline bool
CompilingOffThread(JSScript *script, ExecutionMode cmode)
{
switch (cmode) {
case SequentialExecution: return script->isIonCompilingOffThread();
case ParallelExecution: return script->isParallelIonCompilingOffThread();
}
MOZ_ASSUME_NOT_REACHED("No such execution mode");
- return false;
}
static inline bool
CompilingOffThread(HandleScript script, ExecutionMode cmode)
{
switch (cmode) {
case SequentialExecution: return script->isIonCompilingOffThread();
case ParallelExecution: return script->isParallelIonCompilingOffThread();
}
MOZ_ASSUME_NOT_REACHED("No such execution mode");
- return false;
}
static inline types::CompilerOutput::Kind
CompilerOutputKind(ExecutionMode cmode)
{
switch (cmode) {
case SequentialExecution: return types::CompilerOutput::Ion;
case ParallelExecution: return types::CompilerOutput::ParallelIon;
}
MOZ_ASSUME_NOT_REACHED("No such execution mode");
- return types::CompilerOutput::Ion;
}
} // namespace ion
} // namespace js
#endif // JS_ION
#endif /* ion_ExecutionModeInlines_h */
--- a/js/src/ion/FixedArityList.h
+++ b/js/src/ion/FixedArityList.h
@@ -31,22 +31,18 @@ class FixedArityList
};
template <typename T>
class FixedArityList<T, 0>
{
public:
T &operator [](size_t index) {
MOZ_ASSUME_NOT_REACHED("no items");
- static T *operand = NULL;
- return *operand;
}
const T &operator [](size_t index) const {
MOZ_ASSUME_NOT_REACHED("no items");
- static T *operand = NULL;
- return *operand;
}
};
} // namespace ion
} // namespace js
#endif /* ion_FixedArityList_h */
--- a/js/src/ion/Ion.cpp
+++ b/js/src/ion/Ion.cpp
@@ -815,32 +815,30 @@ IonScript::getSafepointIndex(uint32_t di
guessDisp = table[guess].displacement();
JS_ASSERT(guessDisp <= disp);
if (guessDisp == disp)
return &table[guess];
}
}
MOZ_ASSUME_NOT_REACHED("displacement not found.");
- return NULL;
}
const OsiIndex *
IonScript::getOsiIndex(uint32_t disp) const
{
for (const OsiIndex *it = osiIndices(), *end = osiIndices() + osiIndexEntries_;
it != end;
++it)
{
if (it->returnPointDisplacement() == disp)
return it;
}
MOZ_ASSUME_NOT_REACHED("Failed to find OSI point return address");
- return NULL;
}
const OsiIndex *
IonScript::getOsiIndex(uint8_t *retAddr) const
{
IonSpew(IonSpew_Invalidate, "IonScript %p has method %p raw %p", (void *) this, (void *)
method(), method()->raw());
@@ -2001,17 +1999,16 @@ InvalidateActivation(FreeOp *fop, uint8_
IonSpew(IonSpew_Invalidate, "#%d baseline stub frame @ %p", frameno, it.fp());
break;
case IonFrame_Rectifier:
IonSpew(IonSpew_Invalidate, "#%d rectifier frame @ %p", frameno, it.fp());
break;
case IonFrame_Unwound_OptimizedJS:
case IonFrame_Unwound_BaselineStub:
MOZ_ASSUME_NOT_REACHED("invalid");
- break;
case IonFrame_Unwound_Rectifier:
IonSpew(IonSpew_Invalidate, "#%d unwound rectifier frame @ %p", frameno, it.fp());
break;
case IonFrame_Osr:
IonSpew(IonSpew_Invalidate, "#%d osr frame @ %p", frameno, it.fp());
break;
case IonFrame_Entry:
IonSpew(IonSpew_Invalidate, "#%d entry frame @ %p", frameno, it.fp());
--- a/js/src/ion/IonAnalysis.cpp
+++ b/js/src/ion/IonAnalysis.cpp
@@ -566,17 +566,16 @@ TypeAnalyzer::replaceRedundantPhi(MPhi *
case MIRType_Null:
v = NullValue();
break;
case MIRType_Magic:
v = MagicValue(JS_OPTIMIZED_ARGUMENTS);
break;
default:
MOZ_ASSUME_NOT_REACHED("unexpected type");
- return;
}
MConstant *c = MConstant::New(v);
// The instruction pass will insert the box
block->insertBefore(*(block->begin()), c);
phi->replaceAllUsesWith(c);
}
bool
--- a/js/src/ion/IonBuilder.cpp
+++ b/js/src/ion/IonBuilder.cpp
@@ -1100,29 +1100,27 @@ IonBuilder::snoopControlFlow(JSOp op)
case SRC_WHILE:
case SRC_FOR_IN:
// while (cond) { }
return whileOrForInLoop(sn);
default:
// Hard assert for now - make an error later.
MOZ_ASSUME_NOT_REACHED("unknown goto case");
- break;
}
break;
}
case JSOP_TABLESWITCH:
return tableSwitch(op, info().getNote(cx, pc));
case JSOP_IFNE:
// We should never reach an IFNE, it's a stopAt point, which will
// trigger closing the loop.
MOZ_ASSUME_NOT_REACHED("we should never reach an ifne!");
- return ControlStatus_Error;
default:
break;
}
return ControlStatus_None;
}
bool
@@ -1401,17 +1399,16 @@ IonBuilder::inspectOpcode(JSOp op)
return pushConstant(Int32Value(GET_UINT24(pc)));
case JSOP_INT32:
return pushConstant(Int32Value(GET_INT32(pc)));
case JSOP_LOOPHEAD:
// JSOP_LOOPHEAD is handled when processing the loop header.
MOZ_ASSUME_NOT_REACHED("JSOP_LOOPHEAD outside loop");
- return true;
case JSOP_GETELEM:
case JSOP_CALLELEM:
return jsop_getelem();
case JSOP_SETELEM:
return jsop_setelem();
@@ -1603,17 +1600,16 @@ IonBuilder::processCfgEntry(CFGState &st
return processAndOrEnd(state);
case CFGState::LABEL:
return processLabelEnd(state);
default:
MOZ_ASSUME_NOT_REACHED("unknown cfgstate");
}
- return ControlStatus_Error;
}
IonBuilder::ControlStatus
IonBuilder::processIfEnd(CFGState &state)
{
if (current) {
// Here, the false block is the join point. Create an edge from the
// current block to the false block. Note that a RETURN opcode
@@ -2251,17 +2247,16 @@ IonBuilder::processSwitchBreak(JSOp op)
case CFGState::TABLE_SWITCH:
breaks = &state.tableswitch.breaks;
break;
case CFGState::COND_SWITCH_BODY:
breaks = &state.condswitch.breaks;
break;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected switch state.");
- return ControlStatus_Error;
}
*breaks = new DeferredEdge(current, *breaks);
setCurrent(NULL);
pc += js_CodeSpec[op].length;
return processControlEnd();
}
@@ -2328,17 +2323,16 @@ IonBuilder::maybeLoop(JSOp op, jssrcnote
// for (; ; update?)
if (SN_TYPE(sn) == SRC_FOR)
return forLoop(op, sn);
}
break;
default:
MOZ_ASSUME_NOT_REACHED("unexpected opcode");
- return ControlStatus_Error;
}
return ControlStatus_None;
}
void
IonBuilder::assertValidLoopHeadOp(jsbytecode *pc)
{
@@ -2359,17 +2353,16 @@ IonBuilder::assertValidLoopHeadOp(jsbyte
jsbytecode *expected_ifne;
switch (state.state) {
case CFGState::DO_WHILE_LOOP_BODY:
expected_ifne = state.loop.updateEnd;
break;
default:
MOZ_ASSUME_NOT_REACHED("JSOP_LOOPHEAD unexpected source note");
- return;
}
// Make sure this loop goes to the same ifne as the loop header's
// source notes or GOTO.
JS_ASSERT(ifne == expected_ifne);
} else {
JS_ASSERT(state.state != CFGState::DO_WHILE_LOOP_BODY);
}
@@ -3142,17 +3135,16 @@ IonBuilder::jsop_ifeq(JSOp op)
if (!cfgStack_.append(CFGState::IfElse(trueEnd, falseEnd, ifFalse)))
return false;
break;
}
default:
MOZ_ASSUME_NOT_REACHED("unexpected source note type");
- break;
}
// Switch to parsing the true branch. Note that no PC update is needed,
// it's the next instruction.
setCurrentAndSpecializePhis(ifTrue);
return true;
}
@@ -3172,17 +3164,16 @@ IonBuilder::processReturn(JSOp op)
current->add(ins);
def = ins;
break;
}
default:
def = NULL;
MOZ_ASSUME_NOT_REACHED("unknown return op");
- break;
}
if (instrumentedProfiling())
current->add(MFunctionBoundary::New(script(), MFunctionBoundary::Exit));
MReturn *ret = MReturn::New(def);
current->end(ret);
if (!graph().addExit(current))
@@ -3262,17 +3253,16 @@ IonBuilder::jsop_bitop(JSOp op)
break;
case JSOP_URSH:
ins = MUrsh::New(left, right);
break;
default:
MOZ_ASSUME_NOT_REACHED("unexpected bitop");
- return false;
}
current->add(ins);
ins->infer(inspector, pc);
current->push(ins);
if (ins->isEffectful() && !resumeAfter(ins))
return false;
@@ -3320,17 +3310,16 @@ IonBuilder::jsop_binary(JSOp op, MDefini
break;
case JSOP_MOD:
ins = MMod::New(left, right);
break;
default:
MOZ_ASSUME_NOT_REACHED("unexpected binary opcode");
- return false;
}
bool overflowed = types::HasOperationOverflowed(script(), pc);
current->add(ins);
ins->infer(inspector, pc, overflowed);
current->push(ins);
@@ -6083,17 +6072,16 @@ ion::TypeSetIncludes(types::TypeSet *typ
case MIRType_Object:
return types->unknownObject() || (inputTypes && inputTypes->isSubset(types));
case MIRType_Value:
return types->unknown() || (inputTypes && inputTypes->isSubset(types));
default:
MOZ_ASSUME_NOT_REACHED("Bad input type");
- return false;
}
}
// Whether a write of the given value may need a post-write barrier for GC purposes.
bool
ion::NeedsPostBarrier(CompileInfo &info, MDefinition *value)
{
return info.executionMode() != ParallelExecution && value->mightBeType(MIRType_Object);
@@ -6592,17 +6580,16 @@ IonBuilder::jsop_getelem_typed(int array
knownType = allowDouble ? MIRType_Double : MIRType_Int32;
break;
case TypedArray::TYPE_FLOAT32:
case TypedArray::TYPE_FLOAT64:
knownType = MIRType_Double;
break;
default:
MOZ_ASSUME_NOT_REACHED("Unknown typed array type");
- return false;
}
// Get the length.
MInstruction *length = getTypedArrayLength(obj);
current->add(length);
// Bounds check.
id = addBoundsCheck(id, length);
@@ -6639,17 +6626,16 @@ IonBuilder::jsop_getelem_typed(int array
break;
case TypedArray::TYPE_FLOAT32:
case TypedArray::TYPE_FLOAT64:
if (allowDouble)
needsBarrier = false;
break;
default:
MOZ_ASSUME_NOT_REACHED("Unknown typed array type");
- return false;
}
// Assume we will read out-of-bound values. In this case the
// bounds check will be part of the instruction, and the instruction
// will always return a Value.
MLoadTypedArrayElementHole *load =
MLoadTypedArrayElementHole::New(obj, id, arrayType, allowDouble);
current->add(load);
--- a/js/src/ion/IonCaches.cpp
+++ b/js/src/ion/IonCaches.cpp
@@ -2829,18 +2829,17 @@ IsCacheableScopeChain(JSObject *scopeCha
scopeChain = &scopeChain->as<ScopeObject>().enclosingScope();
if (!scopeChain) {
IonSpew(IonSpew_InlineCaches, "Scope chain indirect hit");
return false;
}
}
- MOZ_ASSUME_NOT_REACHED("Shouldn't get here");
- return false;
+ MOZ_ASSUME_NOT_REACHED();
}
JSObject *
BindNameIC::update(JSContext *cx, size_t cacheIndex, HandleObject scopeChain)
{
AutoFlushCache afc ("BindNameCache");
IonScript *ion = GetTopIonJSScript(cx)->ionScript();
--- a/js/src/ion/IonCaches.h
+++ b/js/src/ion/IonCaches.h
@@ -33,18 +33,17 @@ namespace ion {
IONCACHE_KIND_LIST(FORWARD_DECLARE)
#undef FORWARD_DECLARE
class IonCacheVisitor
{
public:
#define VISIT_INS(op) \
virtual bool visit##op##IC(CodeGenerator *codegen, op##IC *) { \
- MOZ_ASSUME_NOT_REACHED("NYI: " #op "IC"); \
- return false; \
+ MOZ_ASSUME_NOT_REACHED("NYI: " #op "IC"); \
}
IONCACHE_KIND_LIST(VISIT_INS)
#undef VISIT_INS
};
// Common shared temporary state needed during codegen between the different
// kinds of caches. Used by OutOfLineUpdateCache.
--- a/js/src/ion/IonFrames-inl.h
+++ b/js/src/ion/IonFrames-inl.h
@@ -44,17 +44,16 @@ SizeOfFramePrefix(FrameType type)
return IonUnwoundRectifierFrameLayout::Size();
case IonFrame_Exit:
return IonExitFrameLayout::Size();
case IonFrame_Osr:
return IonOsrFrameLayout::Size();
default:
MOZ_ASSUME_NOT_REACHED("unknown frame type");
}
- return 0;
}
inline IonCommonFrameLayout *
IonFrameIterator::current() const
{
return (IonCommonFrameLayout *)current_;
}
--- a/js/src/ion/IonFrames.cpp
+++ b/js/src/ion/IonFrames.cpp
@@ -773,17 +773,16 @@ JitActivationIterator::jitStackRange(uin
} else {
IonExitFrameLayout *exitFrame = frames.exitFrame();
IonExitFooterFrame *footer = exitFrame->footer();
const VMFunction *f = footer->function();
if (exitFrame->isWrapperExit() && f->outParam == Type_Handle) {
switch (f->outParamRootType) {
case VMFunction::RootNone:
MOZ_ASSUME_NOT_REACHED("Handle outparam must have root type");
- break;
case VMFunction::RootObject:
case VMFunction::RootString:
case VMFunction::RootPropertyName:
case VMFunction::RootFunction:
case VMFunction::RootCell:
// These are all handles to GCThing pointers.
min = reinterpret_cast<uintptr_t *>(footer->outParam<void *>());
break;
@@ -916,17 +915,16 @@ MarkIonExitFrame(JSTracer *trc, const Io
break;
}
}
if (f->outParam == Type_Handle) {
switch (f->outParamRootType) {
case VMFunction::RootNone:
MOZ_ASSUME_NOT_REACHED("Handle outparam must have root type");
- break;
case VMFunction::RootObject:
gc::MarkObjectRoot(trc, footer->outParam<JSObject *>(), "ion-vm-out");
break;
case VMFunction::RootString:
case VMFunction::RootPropertyName:
gc::MarkStringRoot(trc, footer->outParam<JSString *>(), "ion-vm-out");
break;
case VMFunction::RootFunction:
@@ -956,28 +954,26 @@ MarkJitActivation(JSTracer *trc, const J
case IonFrame_BaselineStub:
MarkBaselineStubFrame(trc, frames);
break;
case IonFrame_OptimizedJS:
MarkIonJSFrame(trc, frames);
break;
case IonFrame_Unwound_OptimizedJS:
MOZ_ASSUME_NOT_REACHED("invalid");
- break;
case IonFrame_Rectifier:
case IonFrame_Unwound_Rectifier:
break;
case IonFrame_Osr:
// The callee token will be marked by the callee JS frame;
// otherwise, it does not need to be marked, since the frame is
// dead.
break;
default:
MOZ_ASSUME_NOT_REACHED("unexpected frame type");
- break;
}
}
}
void
MarkJitActivations(JSRuntime *rt, JSTracer *trc)
{
for (JitActivationIterator activations(rt); !activations.done(); ++activations)
@@ -1110,17 +1106,16 @@ SnapshotIterator::FromTypedPayload(JSVal
case JSVAL_TYPE_BOOLEAN:
return BooleanValue(!!payload);
case JSVAL_TYPE_STRING:
return StringValue(reinterpret_cast<JSString *>(payload));
case JSVAL_TYPE_OBJECT:
return ObjectValue(*reinterpret_cast<JSObject *>(payload));
default:
MOZ_ASSUME_NOT_REACHED("unexpected type - needs payload");
- return UndefinedValue();
}
}
bool
SnapshotIterator::slotReadable(const Slot &slot)
{
switch (slot.mode()) {
case SnapshotReader::DOUBLE_REG:
@@ -1180,17 +1175,16 @@ SnapshotIterator::slotValue(const Slot &
case SnapshotReader::JS_INT32:
return Int32Value(slot.int32Value());
case SnapshotReader::CONSTANT:
return ionScript_->getConstant(slot.constantIndex());
default:
MOZ_ASSUME_NOT_REACHED("huh?");
- return UndefinedValue();
}
}
IonScript *
IonFrameIterator::ionScript() const
{
JS_ASSERT(type() == IonFrame_OptimizedJS);
--- a/js/src/ion/IonFrames.h
+++ b/js/src/ion/IonFrames.h
@@ -86,17 +86,16 @@ ScriptFromCalleeToken(CalleeToken token)
case CalleeToken_Script:
return CalleeTokenToScript(token);
case CalleeToken_Function:
return CalleeTokenToFunction(token)->nonLazyScript();
case CalleeToken_ParallelFunction:
return CalleeTokenToParallelFunction(token)->nonLazyScript();
}
MOZ_ASSUME_NOT_REACHED("invalid callee token tag");
- return NULL;
}
// In between every two frames lies a small header describing both frames. This
// header, minimally, contains a returnAddress word and a descriptor word. The
// descriptor describes the size and type of the previous frame, whereas the
// returnAddress describes the address the newer frame (the callee) will return
// to. The exact mechanism in which frames are laid out is architecture
// dependent.
--- a/js/src/ion/IonMacroAssembler.cpp
+++ b/js/src/ion/IonMacroAssembler.cpp
@@ -303,17 +303,16 @@ MacroAssembler::loadFromTypedArray(int a
if (arrayType == js::TypedArray::TYPE_FLOAT32)
loadFloatAsDouble(src, dest.fpu());
else
loadDouble(src, dest.fpu());
canonicalizeDouble(dest.fpu());
break;
default:
MOZ_ASSUME_NOT_REACHED("Invalid typed array type");
- break;
}
}
template void MacroAssembler::loadFromTypedArray(int arrayType, const Address &src, AnyRegister dest,
Register temp, Label *fail);
template void MacroAssembler::loadFromTypedArray(int arrayType, const BaseIndex &src, AnyRegister dest,
Register temp, Label *fail);
@@ -359,17 +358,16 @@ MacroAssembler::loadFromTypedArray(int a
break;
case TypedArray::TYPE_FLOAT32:
case TypedArray::TYPE_FLOAT64:
loadFromTypedArray(arrayType, src, AnyRegister(ScratchFloatReg), dest.scratchReg(), NULL);
boxDouble(ScratchFloatReg, dest);
break;
default:
MOZ_ASSUME_NOT_REACHED("Invalid typed array type");
- break;
}
}
template void MacroAssembler::loadFromTypedArray(int arrayType, const Address &src, const ValueOperand &dest,
bool allowDouble, Register temp, Label *fail);
template void MacroAssembler::loadFromTypedArray(int arrayType, const BaseIndex &src, const ValueOperand &dest,
bool allowDouble, Register temp, Label *fail);
@@ -1253,17 +1251,16 @@ MacroAssembler::convertValueToInt32(Valu
}
void
MacroAssembler::PushEmptyRooted(VMFunction::RootType rootType)
{
switch (rootType) {
case VMFunction::RootNone:
MOZ_ASSUME_NOT_REACHED("Handle must have root type");
- break;
case VMFunction::RootObject:
case VMFunction::RootString:
case VMFunction::RootPropertyName:
case VMFunction::RootFunction:
case VMFunction::RootCell:
Push(ImmWord((void *)NULL));
break;
case VMFunction::RootValue:
@@ -1274,17 +1271,16 @@ MacroAssembler::PushEmptyRooted(VMFuncti
void
MacroAssembler::popRooted(VMFunction::RootType rootType, Register cellReg,
const ValueOperand &valueReg)
{
switch (rootType) {
case VMFunction::RootNone:
MOZ_ASSUME_NOT_REACHED("Handle must have root type");
- break;
case VMFunction::RootObject:
case VMFunction::RootString:
case VMFunction::RootPropertyName:
case VMFunction::RootFunction:
case VMFunction::RootCell:
Pop(cellReg);
break;
case VMFunction::RootValue:
--- a/js/src/ion/IonMacroAssembler.h
+++ b/js/src/ion/IonMacroAssembler.h
@@ -542,33 +542,31 @@ class MacroAssembler : public MacroAssem
store16(value, dest);
break;
case TypedArray::TYPE_INT32:
case TypedArray::TYPE_UINT32:
store32(value, dest);
break;
default:
MOZ_ASSUME_NOT_REACHED("Invalid typed array type");
- break;
}
}
template<typename S, typename T>
void storeToTypedFloatArray(int arrayType, const S &value, const T &dest) {
switch (arrayType) {
case TypedArray::TYPE_FLOAT32:
convertDoubleToFloat(value, ScratchFloatReg);
storeFloat(ScratchFloatReg, dest);
break;
case TypedArray::TYPE_FLOAT64:
storeDouble(value, dest);
break;
default:
MOZ_ASSUME_NOT_REACHED("Invalid typed array type");
- break;
}
}
Register extractString(const Address &address, Register scratch) {
return extractObject(address, scratch);
}
Register extractString(const ValueOperand &value, Register scratch) {
return extractObject(value, scratch);
@@ -942,17 +940,16 @@ JSOpToDoubleCondition(JSOp op)
case JSOP_LE:
return Assembler::DoubleLessThanOrEqual;
case JSOP_GT:
return Assembler::DoubleGreaterThan;
case JSOP_GE:
return Assembler::DoubleGreaterThanOrEqual;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected comparison operation");
- return Assembler::DoubleEqual;
}
}
// Note: the op may have been inverted during lowering (to put constants in a
// position where they can be immediates), so it is important to use the
// lir->jsop() instead of the mir->jsop() when it is present.
static inline Assembler::Condition
JSOpToCondition(JSOp op, bool isSigned)
@@ -970,17 +967,16 @@ JSOpToCondition(JSOp op, bool isSigned)
case JSOP_LE:
return Assembler::LessThanOrEqual;
case JSOP_GT:
return Assembler::GreaterThan;
case JSOP_GE:
return Assembler::GreaterThanOrEqual;
default:
MOZ_ASSUME_NOT_REACHED("Unrecognized comparison operation");
- return Assembler::Equal;
}
} else {
switch (op) {
case JSOP_EQ:
case JSOP_STRICTEQ:
return Assembler::Equal;
case JSOP_NE:
case JSOP_STRICTNE:
@@ -990,17 +986,16 @@ JSOpToCondition(JSOp op, bool isSigned)
case JSOP_LE:
return Assembler::BelowOrEqual;
case JSOP_GT:
return Assembler::Above;
case JSOP_GE:
return Assembler::AboveOrEqual;
default:
MOZ_ASSUME_NOT_REACHED("Unrecognized comparison operation");
- return Assembler::Equal;
}
}
}
typedef Vector<MIRType, 8> MIRTypeVector;
class ABIArgIter
{
--- a/js/src/ion/IonTypes.h
+++ b/js/src/ion/IonTypes.h
@@ -64,17 +64,16 @@ BailoutKindString(BailoutKind kind)
return "Bailout_BoundsCheck";
case Bailout_ShapeGuard:
return "Bailout_ShapeGuard";
case Bailout_CachedShapeGuard:
return "Bailout_CachedShapeGuard";
default:
MOZ_ASSUME_NOT_REACHED("Invalid BailoutKind");
}
- return "INVALID_BAILOUT_KIND";
}
#endif
// The ordering of this enumeration is important: Anything < Value is a
// specialized type. Furthermore, anything < String has trivial conversion to
// a number.
enum MIRType
{
@@ -114,17 +113,16 @@ MIRTypeFromValueType(JSValueType type)
case JSVAL_TYPE_OBJECT:
return MIRType_Object;
case JSVAL_TYPE_MAGIC:
return MIRType_Magic;
case JSVAL_TYPE_UNKNOWN:
return MIRType_Value;
default:
MOZ_ASSUME_NOT_REACHED("unexpected jsval type");
- return MIRType_None;
}
}
static inline JSValueType
ValueTypeFromMIRType(MIRType type)
{
switch (type) {
case MIRType_Undefined:
@@ -182,17 +180,16 @@ StringFromMIRType(MIRType type)
case MIRType_Elements:
return "Elements";
case MIRType_Pointer:
return "Pointer";
case MIRType_ForkJoinSlice:
return "ForkJoinSlice";
default:
MOZ_ASSUME_NOT_REACHED("Unknown MIRType.");
- return "";
}
}
static inline bool
IsNumberType(MIRType type)
{
return type == MIRType_Int32 || type == MIRType_Double;
}
--- a/js/src/ion/LIR-Common.h
+++ b/js/src/ion/LIR-Common.h
@@ -4476,27 +4476,25 @@ class LPhi : public LInstruction
JS_ASSERT(index < numOperands());
inputs_[index] = a;
}
size_t numTemps() const {
return 0;
}
LDefinition *getTemp(size_t index) {
MOZ_ASSUME_NOT_REACHED("no temps");
- return NULL;
}
void setTemp(size_t index, const LDefinition &temp) {
MOZ_ASSUME_NOT_REACHED("no temps");
}
size_t numSuccessors() const {
return 0;
}
MBasicBlock *getSuccessor(size_t i) const {
MOZ_ASSUME_NOT_REACHED("no successors");
- return NULL;
}
void setSuccessor(size_t i, MBasicBlock *) {
MOZ_ASSUME_NOT_REACHED("no successors");
}
virtual void printInfo(FILE *fp) {
printOperands(fp);
}
@@ -4798,17 +4796,16 @@ class LAsmJSCall : public LInstruction
void setTemp(size_t index, const LDefinition &a) {
MOZ_ASSUME_NOT_REACHED("no temps");
}
size_t numSuccessors() const {
return 0;
}
MBasicBlock *getSuccessor(size_t i) const {
MOZ_ASSUME_NOT_REACHED("no successors");
- return NULL;
}
void setSuccessor(size_t i, MBasicBlock *) {
MOZ_ASSUME_NOT_REACHED("no successors");
}
};
class LAsmJSCheckOverRecursed : public LInstructionHelper<0, 0, 0>
{
--- a/js/src/ion/LIR.cpp
+++ b/js/src/ion/LIR.cpp
@@ -266,17 +266,16 @@ LAllocation::toString() const
case LAllocation::DOUBLE_ARGUMENT:
JS_snprintf(buf, sizeof(buf), "arg:%d", toArgument()->index());
return buf;
case LAllocation::USE:
PrintUse(buf, sizeof(buf), toUse());
return buf;
default:
MOZ_ASSUME_NOT_REACHED("what?");
- return "???";
}
}
#endif // DEBUG
void
LInstruction::printOperands(FILE *fp)
{
for (size_t i = 0; i < numOperands(); i++) {
--- a/js/src/ion/LIR.h
+++ b/js/src/ion/LIR.h
@@ -546,17 +546,16 @@ class LDefinition
// need to change to ::OBJECT.
return LDefinition::GENERAL;
case MIRType_Pointer:
return LDefinition::GENERAL;
case MIRType_ForkJoinSlice:
return LDefinition::GENERAL;
default:
MOZ_ASSUME_NOT_REACHED("unexpected type");
- return LDefinition::GENERAL;
}
}
};
// Forward declarations of LIR types.
#define LIROP(op) class L##op;
LIR_OPCODE_LIST(LIROP)
#undef LIROP
@@ -712,17 +711,17 @@ class LInstructionVisitor
}
LInstructionVisitor()
: ins_(NULL),
lastPC_(NULL)
{}
public:
-#define VISIT_INS(op) virtual bool visit##op(L##op *) { MOZ_ASSUME_NOT_REACHED("NYI: " #op); return false; }
+#define VISIT_INS(op) virtual bool visit##op(L##op *) { MOZ_ASSUME_NOT_REACHED("NYI: " #op); }
LIR_OPCODE_LIST(VISIT_INS)
#undef VISIT_INS
};
typedef InlineList<LInstruction>::iterator LInstructionIterator;
typedef InlineList<LInstruction>::reverse_iterator LInstructionReverseIterator;
class LPhi;
--- a/js/src/ion/LiveRangeAllocator.cpp
+++ b/js/src/ion/LiveRangeAllocator.cpp
@@ -26,17 +26,16 @@ Requirement::priority() const
case Requirement::REGISTER:
return 1;
case Requirement::NONE:
return 2;
default:
MOZ_ASSUME_NOT_REACHED("Unknown requirement kind.");
- return -1;
}
}
bool
LiveInterval::Range::contains(const Range *other) const
{
Range pre, inside, post;
intersect(other, &pre, &inside, &post);
--- a/js/src/ion/LiveRangeAllocator.h
+++ b/js/src/ion/LiveRangeAllocator.h
@@ -114,17 +114,16 @@ UseCompatibleWith(const LUse *use, LAllo
return alloc.isRegister();
case LUse::FIXED:
// Fixed uses are handled using fixed intervals. The
// UsePosition is only used as hint.
return alloc.isRegister();
default:
MOZ_ASSUME_NOT_REACHED("Unknown use policy");
}
- return false;
}
#ifdef DEBUG
static inline bool
DefinitionCompatibleWith(LInstruction *ins, const LDefinition *def, LAllocation alloc)
{
if (ins->isPhi()) {
@@ -144,17 +143,16 @@ DefinitionCompatibleWith(LInstruction *i
if (!alloc.isRegister() || !ins->numOperands())
return false;
return alloc == *ins->getOperand(def->getReusedInput());
case LDefinition::PASSTHROUGH:
return true;
default:
MOZ_ASSUME_NOT_REACHED("Unknown definition policy");
}
- return false;
}
#endif // DEBUG
static inline LDefinition *
FindReusingDefinition(LInstruction *ins, LAllocation *alloc)
{
for (size_t i = 0; i < ins->numDefs(); i++) {
--- a/js/src/ion/Lowering.cpp
+++ b/js/src/ion/Lowering.cpp
@@ -839,17 +839,16 @@ LIRGenerator::visitCompare(MCompare *com
if (!useBoxAtStart(lir, LCompareV::LhsInput, left))
return false;
if (!useBoxAtStart(lir, LCompareV::RhsInput, right))
return false;
return define(lir, comp);
}
MOZ_ASSUME_NOT_REACHED("Unrecognized compare type.");
- return false;
}
static void
ReorderCommutative(MDefinition **lhsp, MDefinition **rhsp)
{
MDefinition *lhs = *lhsp;
MDefinition *rhs = *rhsp;
@@ -1448,17 +1447,16 @@ LIRGenerator::visitToDouble(MToDouble *c
case MIRType_Double:
return redefine(convert, opd);
default:
// Objects might be effectful.
// Strings are complicated - we don't handle them yet.
MOZ_ASSUME_NOT_REACHED("unexpected type");
- return false;
}
}
bool
LIRGenerator::visitToInt32(MToInt32 *convert)
{
MDefinition *opd = convert->input();
@@ -1495,17 +1493,16 @@ LIRGenerator::visitToInt32(MToInt32 *con
return false;
case MIRType_Undefined:
IonSpew(IonSpew_Abort, "Undefined coerces to NaN, not int32_t.");
return false;
default:
MOZ_ASSUME_NOT_REACHED("unexpected type");
- return false;
}
}
bool
LIRGenerator::visitTruncateToInt32(MTruncateToInt32 *truncate)
{
MDefinition *opd = truncate->input();
@@ -1528,31 +1525,29 @@ LIRGenerator::visitTruncateToInt32(MTrun
case MIRType_Double:
return lowerTruncateDToInt32(truncate);
default:
// Objects might be effectful.
// Strings are complicated - we don't handle them yet.
MOZ_ASSUME_NOT_REACHED("unexpected type");
- return false;
}
}
bool
LIRGenerator::visitToString(MToString *ins)
{
MDefinition *opd = ins->input();
switch (opd->type()) {
case MIRType_Null:
case MIRType_Undefined:
case MIRType_Boolean:
MOZ_ASSUME_NOT_REACHED("NYI: Lower MToString");
- return false;
case MIRType_Double: {
LDoubleToString *lir = new LDoubleToString(useRegister(opd), temp());
if (!define(lir, ins))
return false;
return assignSafepoint(lir, ins);
}
@@ -1563,17 +1558,16 @@ LIRGenerator::visitToString(MToString *i
if (!define(lir, ins))
return false;
return assignSafepoint(lir, ins);
}
default:
// Objects might be effectful. (see ToPrimitive)
MOZ_ASSUME_NOT_REACHED("unexpected type");
- return false;
}
}
bool
LIRGenerator::visitRegExp(MRegExp *ins)
{
LRegExp *lir = new LRegExp();
return defineReturn(lir, ins) && assignSafepoint(lir, ins);
@@ -1657,17 +1651,16 @@ LIRGenerator::visitLoadSlot(MLoadSlot *i
{
switch (ins->type()) {
case MIRType_Value:
return defineBox(new LLoadSlotV(useRegister(ins->slots())), ins);
case MIRType_Undefined:
case MIRType_Null:
MOZ_ASSUME_NOT_REACHED("typed load must have a payload");
- return false;
default:
return define(new LLoadSlotT(useRegister(ins->slots())), ins);
}
}
bool
LIRGenerator::visitFunctionEnvironment(MFunctionEnvironment *ins)
@@ -1903,17 +1896,16 @@ LIRGenerator::visitNot(MNot *ins)
LNotV *lir = new LNotV(tempFloat(), temp0, temp1);
if (!useBox(lir, LNotV::Input, op))
return false;
return define(lir, ins);
}
default:
MOZ_ASSUME_NOT_REACHED("Unexpected MIRType.");
- return false;
}
}
bool
LIRGenerator::visitBoundsCheck(MBoundsCheck *ins)
{
LInstruction *check;
if (ins->minimum() || ins->maximum()) {
@@ -1972,17 +1964,16 @@ LIRGenerator::visitLoadElement(MLoadElem
useRegisterOrConstant(ins->index()));
if (ins->fallible() && !assignSnapshot(lir))
return false;
return defineBox(lir, ins);
}
case MIRType_Undefined:
case MIRType_Null:
MOZ_ASSUME_NOT_REACHED("typed load must have a payload");
- return false;
default:
{
LLoadElementT *lir = new LLoadElementT(useRegister(ins->elements()),
useRegisterOrConstant(ins->index()));
if (ins->fallible() && !assignSnapshot(lir))
return false;
return define(lir, ins);
@@ -2079,17 +2070,16 @@ LIRGenerator::visitArrayPopShift(MArrayP
case MIRType_Value:
{
LArrayPopShiftV *lir = new LArrayPopShiftV(object, temp(), temp());
return defineBox(lir, ins) && assignSafepoint(lir, ins);
}
case MIRType_Undefined:
case MIRType_Null:
MOZ_ASSUME_NOT_REACHED("typed load must have a payload");
- return false;
default:
{
LArrayPopShiftT *lir = new LArrayPopShiftT(object, temp(), temp());
return define(lir, ins) && assignSafepoint(lir, ins);
}
}
}
@@ -2175,17 +2165,16 @@ LIRGenerator::visitClampToUint8(MClampTo
LClampVToUint8 *lir = new LClampVToUint8(tempFloat());
if (!useBox(lir, LClampVToUint8::Input, in))
return false;
return assignSnapshot(lir) && define(lir, ins);
}
default:
MOZ_ASSUME_NOT_REACHED("unexpected type");
- return false;
}
}
bool
LIRGenerator::visitLoadTypedArrayElementHole(MLoadTypedArrayElementHole *ins)
{
JS_ASSERT(ins->object()->type() == MIRType_Object);
JS_ASSERT(ins->index()->type() == MIRType_Int32);
--- a/js/src/ion/MIR.cpp
+++ b/js/src/ion/MIR.cpp
@@ -112,17 +112,16 @@ EvaluateConstantOperands(MBinaryInstruct
case MDefinition::Op_Div:
ret.setNumber(NumberDiv(lhs.toNumber(), rhs.toNumber()));
break;
case MDefinition::Op_Mod:
ret.setNumber(NumberMod(lhs.toNumber(), rhs.toNumber()));
break;
default:
MOZ_ASSUME_NOT_REACHED("NYI");
- return NULL;
}
if (ins->type() != MIRTypeFromValue(ret)) {
if (ptypeChange)
*ptypeChange = true;
return NULL;
}
@@ -433,17 +432,16 @@ MConstant::printOpcode(FILE *fp)
case MIRType_String:
fprintf(fp, "string %p", (void *)value().toString());
break;
case MIRType_Magic:
fprintf(fp, "magic");
break;
default:
MOZ_ASSUME_NOT_REACHED("unexpected type");
- break;
}
}
void
MControlInstruction::printOpcode(FILE *fp)
{
MDefinition::printOpcode(fp);
for (size_t j = 0; j < numSuccessors(); j++)
@@ -1482,17 +1480,16 @@ MCompare::inputType()
return MIRType_String;
case Compare_Object:
return MIRType_Object;
case Compare_Unknown:
case Compare_Value:
return MIRType_Value;
default:
MOZ_ASSUME_NOT_REACHED("No known conversion");
- return MIRType_None;
}
}
static inline bool
MustBeUInt32(MDefinition *def, MDefinition **pwrapped)
{
if (def->isUrsh()) {
*pwrapped = def->toUrsh()->getOperand(0);
@@ -1933,17 +1930,16 @@ MCompare::tryFold(bool *result)
case MIRType_Int32:
case MIRType_Double:
case MIRType_String:
case MIRType_Boolean:
*result = (op == JSOP_NE || op == JSOP_STRICTNE);
return true;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected type");
- return false;
}
}
if (compareType_ == Compare_Boolean) {
JS_ASSERT(op == JSOP_STRICTEQ || op == JSOP_STRICTNE);
JS_ASSERT(rhs()->type() == MIRType_Boolean);
switch (lhs()->type()) {
@@ -1955,20 +1951,18 @@ MCompare::tryFold(bool *result)
case MIRType_Object:
case MIRType_Null:
case MIRType_Undefined:
*result = (op == JSOP_STRICTNE);
return true;
case MIRType_Boolean:
// Int32 specialization should handle this.
MOZ_ASSUME_NOT_REACHED("Wrong specialization");
- return false;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected type");
- return false;
}
}
if (compareType_ == Compare_StrictString) {
JS_ASSERT(op == JSOP_STRICTEQ || op == JSOP_STRICTNE);
JS_ASSERT(rhs()->type() == MIRType_String);
switch (lhs()->type()) {
@@ -1980,20 +1974,18 @@ MCompare::tryFold(bool *result)
case MIRType_Object:
case MIRType_Null:
case MIRType_Undefined:
*result = (op == JSOP_STRICTNE);
return true;
case MIRType_String:
// Compare_String specialization should handle this.
MOZ_ASSUME_NOT_REACHED("Wrong specialization");
- return false;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected type");
- return false;
}
}
return false;
}
bool
MCompare::evaluateConstantOperands(bool *result)
@@ -2036,17 +2028,16 @@ MCompare::evaluateConstantOperands(bool
*result = (comp == 0);
break;
case JSOP_STRICTNE: // Fall through.
case JSOP_NE:
*result = (comp != 0);
break;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected op.");
- return false;
}
return true;
}
if (compareType_ == Compare_UInt32) {
uint32_t lhsUint = uint32_t(lhs.toInt32());
uint32_t rhsUint = uint32_t(rhs.toInt32());
@@ -2069,17 +2060,16 @@ MCompare::evaluateConstantOperands(bool
*result = (lhsUint == rhsUint);
break;
case JSOP_NE:
case JSOP_STRICTNE:
*result = (lhsUint != rhsUint);
break;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected op.");
- return false;
}
return true;
}
if (!lhs.isNumber() || !rhs.isNumber())
return false;
--- a/js/src/ion/MIR.h
+++ b/js/src/ion/MIR.h
@@ -3455,17 +3455,16 @@ class MDiv : public MBinaryArithInstruct
}
MDefinition *foldsTo(bool useValueNumbers);
void analyzeEdgeCasesForward();
void analyzeEdgeCasesBackward();
double getIdentity() {
MOZ_ASSUME_NOT_REACHED("not used");
- return 1;
}
bool canBeNegativeZero() {
return canBeNegativeZero_;
}
void setCanBeNegativeZero(bool negativeZero) {
canBeNegativeZero_ = negativeZero;
}
@@ -3503,17 +3502,16 @@ class MMod : public MBinaryArithInstruct
mod->setTruncated(true);
return mod;
}
MDefinition *foldsTo(bool useValueNumbers);
double getIdentity() {
MOZ_ASSUME_NOT_REACHED("not used");
- return 1;
}
bool fallible();
void computeRange();
bool truncate();
};
--- a/js/src/ion/MOpcodes.h
+++ b/js/src/ion/MOpcodes.h
@@ -208,17 +208,17 @@ class MInstructionVisitor // interface i
#define VISIT_INS(op) virtual bool visit##op(M##op *) = 0;
MIR_OPCODE_LIST(VISIT_INS)
#undef VISIT_INS
};
class MInstructionVisitorWithDefaults : public MInstructionVisitor
{
public:
-#define VISIT_INS(op) virtual bool visit##op(M##op *) { MOZ_ASSUME_NOT_REACHED("NYI: " #op); return false; }
+#define VISIT_INS(op) virtual bool visit##op(M##op *) { MOZ_ASSUME_NOT_REACHED("NYI: " #op); }
MIR_OPCODE_LIST(VISIT_INS)
#undef VISIT_INS
};
} // namespace ion
} // namespace js
#endif /* ion_MOpcodes_h */
--- a/js/src/ion/Snapshots.cpp
+++ b/js/src/ion/Snapshots.cpp
@@ -264,17 +264,16 @@ SnapshotReader::readSlot()
slot.unknown_type_.value = Location::From(reader_.readSigned());
}
return slot;
#endif
}
}
MOZ_ASSUME_NOT_REACHED("huh?");
- return Slot(JS_UNDEFINED);
}
SnapshotOffset
SnapshotWriter::startSnapshot(uint32_t frameCount, BailoutKind kind, bool resumeAfter)
{
nframes_ = frameCount;
framesWritten_ = 0;
@@ -374,17 +373,16 @@ ValTypeToString(JSValueType type)
case JSVAL_TYPE_BOOLEAN:
return "boolean";
case JSVAL_TYPE_OBJECT:
return "object";
case JSVAL_TYPE_MAGIC:
return "magic";
default:
MOZ_ASSUME_NOT_REACHED("no payload");
- return "";
}
}
void
SnapshotWriter::addSlot(JSValueType type, const Register ®)
{
IonSpew(IonSpew_Snapshots, " slot %u: %s (%s)",
slotsWritten_, ValTypeToString(type), reg.name());
--- a/js/src/ion/StupidAllocator.cpp
+++ b/js/src/ion/StupidAllocator.cpp
@@ -32,17 +32,16 @@ StupidAllocator::stackLocation(uint32_t
StupidAllocator::RegisterIndex
StupidAllocator::registerIndex(AnyRegister reg)
{
for (size_t i = 0; i < registerCount; i++) {
if (reg == registers[i].reg)
return i;
}
MOZ_ASSUME_NOT_REACHED("Bad register");
- return UINT32_MAX;
}
bool
StupidAllocator::init()
{
if (!RegisterAllocator::init())
return false;
--- a/js/src/ion/TypePolicy.cpp
+++ b/js/src/ion/TypePolicy.cpp
@@ -205,17 +205,16 @@ ComparePolicy::adjustInputs(MInstruction
case MIRType_Object:
replace = MUnbox::New(in, MIRType_Object, MUnbox::Infallible);
break;
case MIRType_String:
replace = MUnbox::New(in, MIRType_String, MUnbox::Infallible);
break;
default:
MOZ_ASSUME_NOT_REACHED("Unknown compare specialization");
- return false;
}
def->block()->insertBefore(def, replace);
def->replaceOperand(i, replace);
}
return true;
}
@@ -487,17 +486,16 @@ StoreTypedArrayPolicy::adjustValueInput(
value = MConstant::New(DoubleValue(js_NaN));
ins->block()->insertBefore(ins, value->toInstruction());
break;
case MIRType_String:
value = boxAt(ins, value);
break;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected type");
- break;
}
if (value != curValue) {
ins->replaceOperand(valueOperand, value);
curValue = value;
}
JS_ASSERT(value->type() == MIRType_Int32 ||
@@ -525,17 +523,16 @@ StoreTypedArrayPolicy::adjustValueInput(
case TypedArray::TYPE_FLOAT64:
if (value->type() != MIRType_Double) {
value = MToDouble::New(value);
ins->block()->insertBefore(ins, value->toInstruction());
}
break;
default:
MOZ_ASSUME_NOT_REACHED("Invalid array type");
- break;
}
if (value != curValue) {
ins->replaceOperand(valueOperand, value);
curValue = value;
}
return true;
}
--- a/js/src/ion/arm/Assembler-arm.cpp
+++ b/js/src/ion/arm/Assembler-arm.cpp
@@ -726,17 +726,16 @@ Assembler::getCF32Target(Iter *iter)
offset = - offset;
}
uint32_t **ptr = (uint32_t **)&dataInst[offset + 8];
return *ptr;
}
MOZ_ASSUME_NOT_REACHED("unsupported branch relocation");
- return NULL;
}
uintptr_t
Assembler::getPointer(uint8_t *instPtr)
{
InstructionIterator iter((Instruction*)instPtr);
uintptr_t ret = (uintptr_t)getPtr32Target(&iter, NULL, NULL);
return ret;
@@ -790,17 +789,16 @@ Assembler::getPtr32Target(Iter *start, R
if (dest)
*dest = toRD(*load);
if (style)
*style = L_LDR;
uint32_t **ptr = (uint32_t **)&dataInst[offset + 8];
return *ptr;
}
MOZ_ASSUME_NOT_REACHED("unsupported relocation");
- return NULL;
}
static IonCode *
CodeFromJump(InstructionIterator *jump)
{
uint8_t *target = (uint8_t *)Assembler::getCF32Target(jump);
return IonCode::FromExecutable(target);
}
@@ -1798,17 +1796,17 @@ Assembler::patchConstantPoolLoad(void* l
}
uint32_t
Assembler::placeConstantPoolBarrier(int offset)
{
// BUG: 700526
// this is still an active path, however, we do not hit it in the test
// suite at all.
- MOZ_NOT_REACHED("ARMAssembler holdover");
+ MOZ_ASSUME_NOT_REACHED("ARMAssembler holdover");
#if 0
offset = (offset - sizeof(ARMWord)) >> 2;
ASSERT((offset <= BOFFSET_MAX && offset >= BOFFSET_MIN));
return AL | B | (offset & BRANCH_MASK);
#endif
}
// Control flow stuff:
@@ -2006,17 +2004,16 @@ Assembler::as_vnmul(VFPRegister vd, VFPR
MOZ_ASSUME_NOT_REACHED("Feature NYI");
}
BufferOffset
Assembler::as_vnmla(VFPRegister vd, VFPRegister vn, VFPRegister vm,
Condition c)
{
MOZ_ASSUME_NOT_REACHED("Feature NYI");
- return BufferOffset();
}
BufferOffset
Assembler::as_vnmls(VFPRegister vd, VFPRegister vn, VFPRegister vm,
Condition c)
{
MOZ_ASSUME_NOT_REACHED("Feature NYI");
return BufferOffset();
--- a/js/src/ion/arm/BaselineIC-arm.cpp
+++ b/js/src/ion/arm/BaselineIC-arm.cpp
@@ -192,17 +192,16 @@ ICBinaryArith_Int32::Compiler::generateS
} else {
masm.j(Assembler::LessThan, &failure);
// Move result for return.
masm.mov(scratchReg, R0.payloadReg());
}
break;
default:
MOZ_ASSUME_NOT_REACHED("Unhandled op for BinaryArith_Int32.");
- return false;
}
EmitReturnFromIC(masm);
switch (op_) {
case JSOP_MUL:
masm.bind(&maybeNegZero);
@@ -244,17 +243,16 @@ ICUnaryArith_Int32::Compiler::generateSt
// Guard against 0 and MIN_INT, both result in a double.
masm.branchTest32(Assembler::Zero, R0.payloadReg(), Imm32(0x7fffffff), &failure);
// Compile -x as 0 - x.
masm.ma_rsb(R0.payloadReg(), Imm32(0), R0.payloadReg());
break;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected op");
- return false;
}
EmitReturnFromIC(masm);
masm.bind(&failure);
EmitStubGuardFailure(masm);
return true;
}
--- a/js/src/ion/arm/CodeGenerator-arm.cpp
+++ b/js/src/ion/arm/CodeGenerator-arm.cpp
@@ -1065,17 +1065,16 @@ CodeGeneratorARM::visitMathD(LMathD *mat
case JSOP_MUL:
masm.ma_vmul(ToFloatRegister(src1), ToFloatRegister(src2), ToFloatRegister(output));
break;
case JSOP_DIV:
masm.ma_vdiv(ToFloatRegister(src1), ToFloatRegister(src2), ToFloatRegister(output));
break;
default:
MOZ_ASSUME_NOT_REACHED("unexpected opcode");
- return false;
}
return true;
}
bool
CodeGeneratorARM::visitFloor(LFloor *lir)
{
FloatRegister input = ToFloatRegister(lir->input());
@@ -1699,24 +1698,22 @@ getBase(U *mir)
}
return InvalidReg;
}
bool
CodeGeneratorARM::visitLoadTypedArrayElementStatic(LLoadTypedArrayElementStatic *ins)
{
MOZ_ASSUME_NOT_REACHED("NYI");
- return true;
}
bool
CodeGeneratorARM::visitStoreTypedArrayElementStatic(LStoreTypedArrayElementStatic *ins)
{
MOZ_ASSUME_NOT_REACHED("NYI");
- return true;
}
bool
CodeGeneratorARM::visitAsmJSLoadHeap(LAsmJSLoadHeap *ins)
{
const MAsmJSLoadHeap *mir = ins->mir();
bool isSigned;
int size;
--- a/js/src/ion/arm/Lowering-arm.cpp
+++ b/js/src/ion/arm/Lowering-arm.cpp
@@ -484,12 +484,11 @@ LIRGeneratorARM::lowerTruncateDToInt32(M
return define(new LTruncateDToInt32(useRegister(opd), LDefinition::BogusTemp()), ins);
}
bool
LIRGeneratorARM::visitStoreTypedArrayElementStatic(MStoreTypedArrayElementStatic *ins)
{
MOZ_ASSUME_NOT_REACHED("NYI");
- return true;
}
//__aeabi_uidiv
--- a/js/src/ion/arm/MacroAssembler-arm.cpp
+++ b/js/src/ion/arm/MacroAssembler-arm.cpp
@@ -725,17 +725,16 @@ MacroAssemblerARM::ma_cmp(Register src1,
as_cmp(src1, op.toOp2(), c);
break;
case Operand::MEM:
ma_ldr(op, ScratchRegister);
as_cmp(src1, O2Reg(ScratchRegister), c);
break;
default:
MOZ_ASSUME_NOT_REACHED("trying to compare FP and integer registers");
- break;
}
}
void
MacroAssemblerARM::ma_cmp(Register src1, Register src2, Condition c)
{
as_cmp(src1, O2Reg(src2), c);
}
@@ -799,18 +798,16 @@ MacroAssemblerARM::ma_check_mul(Register
if (cond == Overflow) {
as_smull(ScratchRegister, dest, src1, src2);
as_cmp(ScratchRegister, asr(dest, 31));
return NotEqual;
}
MOZ_ASSUME_NOT_REACHED("Condition NYI");
- return Always;
-
}
Assembler::Condition
MacroAssemblerARM::ma_check_mul(Register src1, Imm32 imm, Register dest, Condition cond)
{
ma_mov(imm, ScratchRegister);
if (cond == Equal || cond == NotEqual) {
as_smull(ScratchRegister, dest, ScratchRegister, src1, SetCond);
@@ -819,17 +816,16 @@ MacroAssemblerARM::ma_check_mul(Register
if (cond == Overflow) {
as_smull(ScratchRegister, dest, ScratchRegister, src1);
as_cmp(ScratchRegister, asr(dest, 31));
return NotEqual;
}
MOZ_ASSUME_NOT_REACHED("Condition NYI");
- return Always;
}
void
MacroAssemblerARM::ma_mod_mask(Register src, Register dest, Register hold, int32_t shift)
{
// MATH:
// We wish to compute x % (1<<y) - 1 for a known constant, y.
// first, let b = (1<<y) and C = (1<<y)-1, then think of the 32 bit dividend as
--- a/js/src/ion/arm/Trampoline-arm.cpp
+++ b/js/src/ion/arm/Trampoline-arm.cpp
@@ -691,17 +691,16 @@ IonRuntime::generateVMWrapper(JSContext
// Called functions return bools, which are 0/false and non-zero/true
masm.branch32(Assembler::Equal, r0, Imm32(0), &failure);
break;
case Type_ParallelResult:
masm.branch32(Assembler::NotEqual, r0, Imm32(TP_SUCCESS), &failure);
break;
default:
MOZ_ASSUME_NOT_REACHED("unknown failure kind");
- break;
}
// Load the outparam and free any allocated stack.
switch (f.outParam) {
case Type_Handle:
masm.popRooted(f.outParamRootType, ReturnReg, JSReturnOperand);
break;
--- a/js/src/ion/shared/Assembler-shared.h
+++ b/js/src/ion/shared/Assembler-shared.h
@@ -59,17 +59,16 @@ ScaleFromElemWidth(int shift)
return TimesTwo;
case 4:
return TimesFour;
case 8:
return TimesEight;
}
MOZ_ASSUME_NOT_REACHED("Invalid scale");
- return TimesOne;
}
// Used for 32-bit immediates which do not require relocation.
struct Imm32
{
int32_t value;
explicit Imm32(int32_t value) : value(value)
@@ -82,17 +81,16 @@ struct Imm32
case TimesTwo:
return Imm32(1);
case TimesFour:
return Imm32(2);
case TimesEight:
return Imm32(3);
};
MOZ_ASSUME_NOT_REACHED("Invalid scale");
- return Imm32(-1);
}
static inline Imm32 FactorOf(enum Scale s) {
return Imm32(1 << ShiftOf(s).value);
}
};
// Pointer-sized immediate.
--- a/js/src/ion/shared/Assembler-x86-shared.cpp
+++ b/js/src/ion/shared/Assembler-x86-shared.cpp
@@ -119,17 +119,16 @@ AssemblerX86Shared::InvertCondition(Cond
case AboveOrEqual:
return Below;
case Below:
return AboveOrEqual;
case BelowOrEqual:
return Above;
default:
MOZ_ASSUME_NOT_REACHED("unexpected condition");
- return Equal;
}
}
void
AutoFlushCache::update(uintptr_t newStart, size_t len)
{
}
--- a/js/src/ion/shared/Assembler-x86-shared.h
+++ b/js/src/ion/shared/Assembler-x86-shared.h
@@ -130,17 +130,16 @@ class AssemblerX86Shared
return NaN_HandledByCond;
case DoubleEqual:
return NaN_IsFalse;
case DoubleNotEqualOrUnordered:
return NaN_IsTrue;
}
MOZ_ASSUME_NOT_REACHED("Unknown double condition");
- return NaN_HandledByCond;
}
static void staticAsserts() {
// DoubleConditionBits should not interfere with x86 condition codes.
JS_STATIC_ASSERT(!((Equal | NotEqual | Above | AboveOrEqual | Below |
BelowOrEqual | Parity | NoParity) & DoubleConditionBits));
}
--- a/js/src/ion/shared/CodeGenerator-shared-inl.h
+++ b/js/src/ion/shared/CodeGenerator-shared-inl.h
@@ -13,17 +13,16 @@ namespace ion {
static inline int32_t
ToInt32(const LAllocation *a)
{
if (a->isConstantValue())
return a->toConstant()->toInt32();
if (a->isConstantIndex())
return a->toConstantIndex()->index();
MOZ_ASSUME_NOT_REACHED("this is not a constant!");
- return -1;
}
static inline double
ToDouble(const LAllocation *a)
{
return a->toConstant()->toNumber();
}
static inline Register
--- a/js/src/ion/shared/CodeGenerator-x86-shared.cpp
+++ b/js/src/ion/shared/CodeGenerator-x86-shared.cpp
@@ -1134,17 +1134,16 @@ CodeGeneratorX86Shared::visitMathD(LMath
case JSOP_MUL:
masm.mulsd(rhs, lhs);
break;
case JSOP_DIV:
masm.divsd(rhs, lhs);
break;
default:
MOZ_ASSUME_NOT_REACHED("unexpected opcode");
- return false;
}
return true;
}
bool
CodeGeneratorX86Shared::visitFloor(LFloor *lir)
{
FloatRegister input = ToFloatRegister(lir->input());
--- a/js/src/ion/shared/IonAssemblerBuffer.h
+++ b/js/src/ion/shared/IonAssemblerBuffer.h
@@ -234,17 +234,16 @@ struct AssemblerBuffer
BufferOffset nextOffset() const {
if (tail != NULL)
return BufferOffset(bufferSize + tail->size());
else
return BufferOffset(bufferSize);
}
BufferOffset prevOffset() const {
MOZ_ASSUME_NOT_REACHED("Don't current record lastInstSize");
- return BufferOffset(bufferSize + tail->nodeSize - lastInstSize);
}
// Break the instruction stream so we can go back and edit it at this point
void perforate() {
Slice *tmp = newSlice(LifoAlloc_);
if (!tmp)
m_oom = true;
bufferSize += tail->size();
--- a/js/src/ion/shared/IonAssemblerBufferWithConstantPools.h
+++ b/js/src/ion/shared/IonAssemblerBufferWithConstantPools.h
@@ -1126,17 +1126,16 @@ struct AssemblerBufferWithConstantPool :
}
for (int idx = numPoolKinds-1; idx >= 0; idx--) {
if (poolGroup[idx].other == realPool) {
return start + offset;
}
start = poolGroup[idx].other->addPoolSize(start);
}
MOZ_ASSUME_NOT_REACHED("Entry is not in a pool");
- return -1;
}
void writePoolEntry(PoolEntry pe, uint8_t *buff) {
size_t size = getPoolEntrySize(pe);
uint8_t *entry = getPoolEntry(pe);
memcpy(entry, buff, size);
}
void readPoolEntry(PoolEntry pe, uint8_t *buff) {
size_t size = getPoolEntrySize(pe);
--- a/js/src/ion/x64/BaselineIC-x64.cpp
+++ b/js/src/ion/x64/BaselineIC-x64.cpp
@@ -176,17 +176,16 @@ ICBinaryArith_Int32::Compiler::generateS
masm.boxDouble(ScratchFloatReg, R0);
} else {
masm.j(Assembler::Signed, &revertRegister);
masm.boxValue(JSVAL_TYPE_INT32, ExtractTemp0, R0.valueReg());
}
break;
default:
MOZ_ASSUME_NOT_REACHED("Unhandled op in BinaryArith_Int32");
- return false;
}
// Return from stub.
EmitReturnFromIC(masm);
if (op_ == JSOP_MUL) {
masm.bind(&maybeNegZero);
@@ -226,17 +225,16 @@ ICUnaryArith_Int32::Compiler::generateSt
break;
case JSOP_NEG:
// Guard against 0 and MIN_INT, both result in a double.
masm.branchTest32(Assembler::Zero, R0.valueReg(), Imm32(0x7fffffff), &failure);
masm.negl(R0.valueReg());
break;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected op");
- return false;
}
masm.tagValue(JSVAL_TYPE_INT32, R0.valueReg(), R0);
EmitReturnFromIC(masm);
masm.bind(&failure);
EmitStubGuardFailure(masm);
--- a/js/src/ion/x64/CodeGenerator-x64.cpp
+++ b/js/src/ion/x64/CodeGenerator-x64.cpp
@@ -53,17 +53,16 @@ FrameSizeClass::ClassLimit()
{
return FrameSizeClass(0);
}
uint32_t
FrameSizeClass::frameSize() const
{
MOZ_ASSUME_NOT_REACHED("x64 does not use frame size classes");
- return 0;
}
bool
CodeGeneratorX64::visitValue(LValue *value)
{
LDefinition *reg = value->getDef(0);
masm.moveValue(value->value(), ToRegister(reg));
return true;
@@ -114,17 +113,16 @@ CodeGeneratorX64::visitUnbox(LUnbox *unb
case MIRType_Object:
cond = masm.testObject(Assembler::NotEqual, value);
break;
case MIRType_String:
cond = masm.testString(Assembler::NotEqual, value);
break;
default:
MOZ_ASSUME_NOT_REACHED("Given MIRType cannot be unboxed.");
- return false;
}
if (!bailoutIf(cond, unbox->snapshot()))
return false;
}
switch (mir->type()) {
case MIRType_Int32:
masm.unboxInt32(value, ToRegister(result));
@@ -135,17 +133,16 @@ CodeGeneratorX64::visitUnbox(LUnbox *unb
case MIRType_Object:
masm.unboxObject(value, ToRegister(result));
break;
case MIRType_String:
masm.unboxString(value, ToRegister(result));
break;
default:
MOZ_ASSUME_NOT_REACHED("Given MIRType cannot be unboxed.");
- break;
}
return true;
}
bool
CodeGeneratorX64::visitLoadSlotV(LLoadSlotV *load)
{
@@ -385,24 +382,22 @@ CodeGeneratorX64::visitUInt32ToDouble(LU
masm.convertUInt32ToDouble(ToRegister(lir->input()), ToFloatRegister(lir->output()));
return true;
}
bool
CodeGeneratorX64::visitLoadTypedArrayElementStatic(LLoadTypedArrayElementStatic *ins)
{
MOZ_ASSUME_NOT_REACHED("NYI");
- return true;
}
bool
CodeGeneratorX64::visitStoreTypedArrayElementStatic(LStoreTypedArrayElementStatic *ins)
{
MOZ_ASSUME_NOT_REACHED("NYI");
- return true;
}
bool
CodeGeneratorX64::visitAsmJSLoadHeap(LAsmJSLoadHeap *ins)
{
MAsmJSLoadHeap *mir = ins->mir();
ArrayBufferView::ViewType vt = mir->viewType();
--- a/js/src/ion/x64/Lowering-x64.cpp
+++ b/js/src/ion/x64/Lowering-x64.cpp
@@ -174,10 +174,9 @@ LIRGeneratorX64::newLGetPropertyCacheT(M
{
return new LGetPropertyCacheT(useRegister(ins->object()), LDefinition::BogusTemp());
}
bool
LIRGeneratorX64::visitStoreTypedArrayElementStatic(MStoreTypedArrayElementStatic *ins)
{
MOZ_ASSUME_NOT_REACHED("NYI");
- return true;
}
--- a/js/src/ion/x64/MacroAssembler-x64.h
+++ b/js/src/ion/x64/MacroAssembler-x64.h
@@ -91,17 +91,16 @@ class MacroAssemblerX64 : public MacroAs
return Operand(Register::FromCode(base.base()), base.disp() + 4);
case Operand::SCALE:
return Operand(Register::FromCode(base.base()), Register::FromCode(base.index()),
base.scale(), base.disp() + 4);
default:
MOZ_ASSUME_NOT_REACHED("unexpected operand kind");
- return base; // Silence GCC warning.
}
}
static inline Operand ToUpper32(const Address &address) {
return Operand(address.base, address.offset + 4);
}
static inline Operand ToUpper32(const BaseIndex &address) {
return Operand(address.base, address.index, address.scale, address.offset + 4);
}
--- a/js/src/ion/x64/Trampoline-x64.cpp
+++ b/js/src/ion/x64/Trampoline-x64.cpp
@@ -446,17 +446,16 @@ GenerateBailoutThunk(JSContext *cx, Macr
masm.generateBailoutTail(rdx, r9);
}
IonCode *
IonRuntime::generateBailoutTable(JSContext *cx, uint32_t frameClass)
{
MOZ_ASSUME_NOT_REACHED("x64 does not use bailout tables");
- return NULL;
}
IonCode *
IonRuntime::generateBailoutHandler(JSContext *cx)
{
MacroAssembler masm;
GenerateBailoutThunk(cx, masm, NO_FRAME_SIZE_CLASS_ID);
@@ -558,17 +557,16 @@ IonRuntime::generateVMWrapper(JSContext
break;
case VMFunction::WordByRef:
masm.passABIArg(MoveOperand(argsBase, argDisp, MoveOperand::EFFECTIVE));
argDisp += sizeof(void *);
break;
case VMFunction::DoubleByValue:
case VMFunction::DoubleByRef:
MOZ_ASSUME_NOT_REACHED("NYI: x64 callVM should not be used with 128bits values.");
- break;
}
}
}
// Copy the implicit outparam, if any.
if (outReg != InvalidReg)
masm.passABIArg(outReg);
@@ -584,17 +582,16 @@ IonRuntime::generateVMWrapper(JSContext
masm.testb(rax, rax);
masm.j(Assembler::Zero, &failure);
break;
case Type_ParallelResult:
masm.branchPtr(Assembler::NotEqual, rax, Imm32(TP_SUCCESS), &failure);
break;
default:
MOZ_ASSUME_NOT_REACHED("unknown failure kind");
- break;
}
// Load the outparam and free any allocated stack.
switch (f.outParam) {
case Type_Handle:
masm.popRooted(f.outParamRootType, ReturnReg, JSReturnOperand);
break;
--- a/js/src/ion/x86/BaselineIC-x86.cpp
+++ b/js/src/ion/x86/BaselineIC-x86.cpp
@@ -180,17 +180,16 @@ ICBinaryArith_Int32::Compiler::generateS
masm.boxDouble(ScratchFloatReg, R0);
} else {
masm.j(Assembler::Signed, &revertRegister);
masm.tagValue(JSVAL_TYPE_INT32, R0.payloadReg(), R0);
}
break;
default:
MOZ_ASSUME_NOT_REACHED("Unhandled op for BinaryArith_Int32. ");
- return false;
}
// Return.
EmitReturnFromIC(masm);
switch(op_) {
case JSOP_MUL:
masm.bind(&maybeNegZero);
@@ -242,17 +241,16 @@ ICUnaryArith_Int32::Compiler::generateSt
break;
case JSOP_NEG:
// Guard against 0 and MIN_INT, both result in a double.
masm.branchTest32(Assembler::Zero, R0.payloadReg(), Imm32(0x7fffffff), &failure);
masm.negl(R0.payloadReg());
break;
default:
MOZ_ASSUME_NOT_REACHED("Unexpected op");
- return false;
}
EmitReturnFromIC(masm);
masm.bind(&failure);
EmitStubGuardFailure(masm);
return true;
}
--- a/js/src/ion/x86/MacroAssembler-x86.h
+++ b/js/src/ion/x86/MacroAssembler-x86.h
@@ -94,17 +94,16 @@ class MacroAssemblerX86 : public MacroAs
return Operand(Register::FromCode(base.base()), base.disp() + sizeof(void *));
case Operand::SCALE:
return Operand(Register::FromCode(base.base()), Register::FromCode(base.index()),
base.scale(), base.disp() + sizeof(void *));
default:
MOZ_ASSUME_NOT_REACHED("unexpected operand kind");
- return base; // Silence GCC warning.
}
}
void moveValue(const Value &val, Register type, Register data) {
jsval_layout jv = JSVAL_TO_IMPL(val);
movl(Imm32(jv.s.tag), type);
if (val.isMarkable())
movl(ImmGCPtr(reinterpret_cast<gc::Cell *>(val.toGCThing())), data);
else
--- a/js/src/ion/x86/Trampoline-x86.cpp
+++ b/js/src/ion/x86/Trampoline-x86.cpp
@@ -605,17 +605,16 @@ IonRuntime::generateVMWrapper(JSContext
masm.testb(eax, eax);
masm.j(Assembler::Zero, &failure);
break;
case Type_ParallelResult:
masm.branchPtr(Assembler::NotEqual, eax, Imm32(TP_SUCCESS), &failure);
break;
default:
MOZ_ASSUME_NOT_REACHED("unknown failure kind");
- break;
}
// Load the outparam and free any allocated stack.
switch (f.outParam) {
case Type_Handle:
masm.popRooted(f.outParamRootType, ReturnReg, JSReturnOperand);
break;
--- a/js/src/jsanalyze.cpp
+++ b/js/src/jsanalyze.cpp
@@ -2017,17 +2017,17 @@ SSAValue::print() const
printf("write:%05u", varOffset());
break;
case PHI:
printf("phi:%05u#%u", phiOffset(), phiSlot());
break;
default:
- MOZ_NOT_REACHED("Bad kind");
+ MOZ_ASSUME_NOT_REACHED("Bad kind");
}
}
void
ScriptAnalysis::assertMatchingDebugMode()
{
JS_ASSERT(!!script_->compartment()->debugMode() == !!originalDebugMode_);
}
--- a/js/src/jsanalyze.h
+++ b/js/src/jsanalyze.h
@@ -202,17 +202,16 @@ ReverseCompareOp(JSOp op)
return JSOP_GE;
case JSOP_EQ:
case JSOP_NE:
case JSOP_STRICTEQ:
case JSOP_STRICTNE:
return op;
default:
MOZ_ASSUME_NOT_REACHED("unrecognized op");
- return op;
}
}
static inline JSOp
NegateCompareOp(JSOp op)
{
switch (op) {
case JSOP_GT:
@@ -228,17 +227,16 @@ NegateCompareOp(JSOp op)
case JSOP_NE:
return JSOP_EQ;
case JSOP_STRICTNE:
return JSOP_STRICTEQ;
case JSOP_STRICTEQ:
return JSOP_STRICTNE;
default:
MOZ_ASSUME_NOT_REACHED("unrecognized op");
- return op;
}
}
static inline unsigned
FollowBranch(JSContext *cx, JSScript *script, unsigned offset)
{
/*
* Get the target offset of a branch. For GOTO opcodes implementing
@@ -291,17 +289,16 @@ static inline uint32_t GetBytecodeSlot(J
case JSOP_SETLOCAL:
return LocalSlot(script, GET_SLOTNO(pc));
case JSOP_THIS:
return ThisSlot();
default:
MOZ_ASSUME_NOT_REACHED("Bad slot opcode");
- return 0;
}
}
/* Slot opcodes which update SSA information. */
static inline bool
BytecodeUpdatesSlot(JSOp op)
{
return (op == JSOP_SETARG || op == JSOP_SETLOCAL);
--- a/js/src/jsanalyzeinlines.h
+++ b/js/src/jsanalyzeinlines.h
@@ -67,17 +67,16 @@ ScriptAnalysis::getValueTypes(const SSAV
*/
return pushedTypes(v.varOffset(), 0);
}
case SSAValue::PHI:
return &v.phiNode()->types;
default:
/* Cannot compute types for empty SSA values. */
MOZ_ASSUME_NOT_REACHED("Bad SSA value");
- return NULL;
}
}
inline types::StackTypeSet *
ScriptAnalysis::poppedTypes(uint32_t offset, uint32_t which)
{
return getValueTypes(poppedValue(offset, which));
}
--- a/js/src/jsclone.cpp
+++ b/js/src/jsclone.cpp
@@ -923,17 +923,16 @@ JSStructuredCloneReader::readTypedArray(
case TypedArray::TYPE_FLOAT64:
obj = JS_NewFloat64ArrayWithBuffer(context(), buffer, byteOffset, nelems);
break;
case TypedArray::TYPE_UINT8_CLAMPED:
obj = JS_NewUint8ClampedArrayWithBuffer(context(), buffer, byteOffset, nelems);
break;
default:
MOZ_ASSUME_NOT_REACHED("unknown TypedArray type");
- return false;
}
if (!obj)
return false;
vp->setObject(*obj);
allObjs[placeholderIndex] = *vp;
@@ -966,17 +965,16 @@ bytesPerTypedArrayElement(uint32_t array
case TypedArray::TYPE_INT32:
case TypedArray::TYPE_UINT32:
case TypedArray::TYPE_FLOAT32:
return sizeof(uint32_t);
case TypedArray::TYPE_FLOAT64:
return sizeof(uint64_t);
default:
MOZ_ASSUME_NOT_REACHED("unknown TypedArray type");
- return 0;
}
}
/*
* Read in the data for a structured clone version 1 ArrayBuffer, performing
* endianness-conversion while reading.
*/
bool
@@ -1003,17 +1001,16 @@ JSStructuredCloneReader::readV1ArrayBuff
case TypedArray::TYPE_INT32:
case TypedArray::TYPE_UINT32:
case TypedArray::TYPE_FLOAT32:
return in.readArray((uint32_t*) buffer.dataPointer(), nelems);
case TypedArray::TYPE_FLOAT64:
return in.readArray((uint64_t*) buffer.dataPointer(), nelems);
default:
MOZ_ASSUME_NOT_REACHED("unknown TypedArray type");
- return false;
}
}
bool
JSStructuredCloneReader::startRead(Value *vp)
{
uint32_t tag, data;
--- a/js/src/jscntxtinlines.h
+++ b/js/src/jscntxtinlines.h
@@ -612,13 +612,12 @@ js::ThreadSafeContext::allowGC() const
switch (contextKind_) {
case Context_JS:
return CanGC;
case Context_ForkJoin:
return NoGC;
default:
/* Silence warnings. */
MOZ_ASSUME_NOT_REACHED("Bad context kind");
- return NoGC;
}
}
#endif /* jscntxtinlines_h */
--- a/js/src/jsfun.cpp
+++ b/js/src/jsfun.cpp
@@ -139,17 +139,16 @@ fun_getProperty(JSContext *cx, HandleObj
return false;
}
}
return true;
}
MOZ_ASSUME_NOT_REACHED("fun_getProperty");
- return false;
}
/* NB: no sentinels at ends -- use ArrayLength to bound loops.
* Properties censored into [[ThrowTypeError]] in strict mode. */
static const uint16_t poisonPillProps[] = {
NAME_OFFSET(arguments),
@@ -1747,11 +1746,10 @@ JSObject::hasIdempotentProtoChain() cons
return false;
obj = obj->getProto();
if (!obj)
return true;
}
MOZ_ASSUME_NOT_REACHED("Should not get here");
- return false;
}
--- a/js/src/jsgc.cpp
+++ b/js/src/jsgc.cpp
@@ -455,17 +455,16 @@ FinalizeArenas(FreeOp *fop,
case FINALIZE_EXTERNAL_STRING:
return FinalizeTypedArenas<JSExternalString>(fop, src, dest, thingKind, budget);
case FINALIZE_IONCODE:
#ifdef JS_ION
return FinalizeTypedArenas<ion::IonCode>(fop, src, dest, thingKind, budget);
#endif
default:
MOZ_ASSUME_NOT_REACHED("Invalid alloc kind");
- return true;
}
}
static inline Chunk *
AllocChunk(JSRuntime *rt)
{
return static_cast<Chunk *>(MapAlignedPages(rt, ChunkSize, ChunkSize));
}
@@ -721,17 +720,16 @@ Chunk::findDecommittedArenaOffset()
/* Note: lastFreeArenaOffset can be past the end of the list. */
for (unsigned i = info.lastDecommittedArenaOffset; i < ArenasPerChunk; i++)
if (decommittedArenas.get(i))
return i;
for (unsigned i = 0; i < info.lastDecommittedArenaOffset; i++)
if (decommittedArenas.get(i))
return i;
MOZ_ASSUME_NOT_REACHED("No decommitted arenas found.");
- return -1;
}
ArenaHeader *
Chunk::fetchNextDecommittedArena()
{
JS_ASSERT(info.numArenasFreeCommitted == 0);
JS_ASSERT(info.numArenasFree > 0);
@@ -3506,17 +3504,16 @@ RemoveFromGrayList(JSObject *wrapper)
if (next == wrapper) {
obj->setCrossCompartmentSlot(slot, ObjectOrNullValue(tail));
return true;
}
obj = next;
}
MOZ_ASSUME_NOT_REACHED("object not found in gray link list");
- return false;
}
static void
ResetGrayList(JSCompartment *comp)
{
JSObject *src = comp->gcIncomingGrayPointers;
while (src)
src = NextIncomingCrossCompartmentPointer(src, true);
--- a/js/src/jsgcinlines.h
+++ b/js/src/jsgcinlines.h
@@ -147,17 +147,16 @@ GetGCKindSlots(AllocKind thingKind)
case FINALIZE_OBJECT12:
case FINALIZE_OBJECT12_BACKGROUND:
return 12;
case FINALIZE_OBJECT16:
case FINALIZE_OBJECT16_BACKGROUND:
return 16;
default:
MOZ_ASSUME_NOT_REACHED("Bad object finalize kind");
- return 0;
}
}
static inline size_t
GetGCKindSlots(AllocKind thingKind, Class *clasp)
{
size_t nslots = GetGCKindSlots(thingKind);
--- a/js/src/jsinfer.cpp
+++ b/js/src/jsinfer.cpp
@@ -186,17 +186,16 @@ types::TypeString(Type type)
case JSVAL_TYPE_DOUBLE:
return "float";
case JSVAL_TYPE_STRING:
return "string";
case JSVAL_TYPE_MAGIC:
return "lazyargs";
default:
MOZ_ASSUME_NOT_REACHED("Bad type");
- return "";
}
}
if (type.isUnknown())
return "unknown";
if (type.isAnyObject())
return " object";
static char bufs[4][40];
--- a/js/src/jsinferinlines.h
+++ b/js/src/jsinferinlines.h
@@ -109,17 +109,16 @@ CompilerOutput::ion() const
#ifdef JS_ION
JS_ASSERT(isValid());
switch (kind()) {
case Ion: return script->ionScript();
case ParallelIon: return script->parallelIonScript();
}
#endif
MOZ_ASSUME_NOT_REACHED("Invalid kind of CompilerOutput");
- return NULL;
}
inline bool
CompilerOutput::isValid() const
{
if (!script)
return false;
@@ -219,17 +218,16 @@ PrimitiveTypeFlag(JSValueType type)
case JSVAL_TYPE_DOUBLE:
return TYPE_FLAG_DOUBLE;
case JSVAL_TYPE_STRING:
return TYPE_FLAG_STRING;
case JSVAL_TYPE_MAGIC:
return TYPE_FLAG_LAZYARGS;
default:
MOZ_ASSUME_NOT_REACHED("Bad type");
- return 0;
}
}
inline JSValueType
TypeFlagPrimitive(TypeFlags flags)
{
switch (flags) {
case TYPE_FLAG_UNDEFINED:
@@ -243,17 +241,16 @@ TypeFlagPrimitive(TypeFlags flags)
case TYPE_FLAG_DOUBLE:
return JSVAL_TYPE_DOUBLE;
case TYPE_FLAG_STRING:
return JSVAL_TYPE_STRING;
case TYPE_FLAG_LAZYARGS:
return JSVAL_TYPE_MAGIC;
default:
MOZ_ASSUME_NOT_REACHED("Bad type");
- return (JSValueType) 0;
}
}
/*
* Get the canonical representation of an id to use when doing inference. This
* maintains the constraint that if two different jsids map to the same property
* in JS (e.g. 3 and "3"), they have the same type representation.
*/
@@ -494,17 +491,16 @@ GetClassForProtoKey(JSProtoKey key)
case JSProto_DataView:
return &DataViewObject::class_;
case JSProto_ParallelArray:
return &ParallelArrayObject::class_;
default:
MOZ_ASSUME_NOT_REACHED("Bad proto key");
- return NULL;
}
}
/*
* Get the default 'new' object for a given standard class, per the currently
* active global.
*/
inline TypeObject *
@@ -1587,17 +1583,16 @@ TypeObject::getProperty(JSContext *cx, j
*/
unsigned count = getPropertyCount();
for (unsigned i = 0; i < count; i++) {
if (Property *prop = getProperty(i))
return &prop->types;
}
MOZ_ASSUME_NOT_REACHED("Missing property");
- return NULL;
}
}
HeapTypeSet *types = &(*pprop)->types;
if (own)
types->setOwnProperty(cx, false);
return types;
--- a/js/src/jsobjinlines.h
+++ b/js/src/jsobjinlines.h
@@ -1262,17 +1262,16 @@ ObjectClassIs(HandleObject obj, ESClassV
case ESClass_Number: return obj->is<NumberObject>();
case ESClass_String: return obj->is<StringObject>();
case ESClass_Boolean: return obj->is<BooleanObject>();
case ESClass_RegExp: return obj->is<RegExpObject>();
case ESClass_ArrayBuffer: return obj->is<ArrayBufferObject>();
case ESClass_Date: return obj->is<DateObject>();
}
MOZ_ASSUME_NOT_REACHED("bad classValue");
- return false;
}
inline bool
IsObjectWithClass(const Value &v, ESClassValue classValue, JSContext *cx)
{
if (!v.isObject())
return false;
RootedObject obj(cx, &v.toObject());
--- a/js/src/jsopcode.cpp
+++ b/js/src/jsopcode.cpp
@@ -113,17 +113,16 @@ js_GetVariableBytecodeLength(jsbytecode
int32_t low = GET_JUMP_OFFSET(pc);
pc += JUMP_OFFSET_LEN;
int32_t high = GET_JUMP_OFFSET(pc);
unsigned ncases = unsigned(high - low + 1);
return 1 + 3 * JUMP_OFFSET_LEN + ncases * JUMP_OFFSET_LEN;
}
default:
MOZ_ASSUME_NOT_REACHED("Unexpected op");
- return 0;
}
}
static uint32_t
NumBlockSlots(JSScript *script, jsbytecode *pc)
{
JS_ASSERT(*pc == JSOP_ENTERBLOCK || *pc == JSOP_ENTERLET0 || *pc == JSOP_ENTERLET1);
JS_STATIC_ASSERT(JSOP_ENTERBLOCK_LENGTH == JSOP_ENTERLET0_LENGTH);
@@ -246,24 +245,22 @@ PCCounts::countName(JSOp op, size_t whic
if (accessOp(op)) {
if (which < ACCESS_LIMIT)
return countAccessNames[which - BASE_LIMIT];
if (elementOp(op))
return countElementNames[which - ACCESS_LIMIT];
if (propertyOp(op))
return countPropertyNames[which - ACCESS_LIMIT];
MOZ_ASSUME_NOT_REACHED("bad op");
- return NULL;
}
if (arithOp(op))
return countArithNames[which - BASE_LIMIT];
MOZ_ASSUME_NOT_REACHED("bad op");
- return NULL;
}
#ifdef DEBUG
#ifdef JS_ION
void
js::DumpIonScriptCounts(Sprinter *sp, ion::IonScriptCounts *ionCounts)
{
--- a/js/src/jsopcode.h
+++ b/js/src/jsopcode.h
@@ -511,17 +511,16 @@ GetBytecodeInteger(jsbytecode *pc)
case JSOP_ZERO: return 0;
case JSOP_ONE: return 1;
case JSOP_UINT16: return GET_UINT16(pc);
case JSOP_UINT24: return GET_UINT24(pc);
case JSOP_INT8: return GET_INT8(pc);
case JSOP_INT32: return GET_INT32(pc);
default:
MOZ_ASSUME_NOT_REACHED("Bad op");
- return 0;
}
}
/*
* Counts accumulated for a single opcode in a script. The counts tracked vary
* between opcodes, and this structure ensures that counts are accessed in a
* coherent fashion.
*/
--- a/js/src/jsproxy.cpp
+++ b/js/src/jsproxy.cpp
@@ -304,42 +304,42 @@ BaseProxyHandler::iterate(JSContext *cx,
}
return EnumeratedIdVectorToIterator(cx, proxy, flags, props, vp);
}
bool
BaseProxyHandler::call(JSContext *cx, HandleObject proxy, const CallArgs &args)
{
- MOZ_NOT_REACHED("callable proxies should implement call trap");
+ MOZ_ASSUME_NOT_REACHED("callable proxies should implement call trap");
}
bool
BaseProxyHandler::construct(JSContext *cx, HandleObject proxy, const CallArgs &args)
{
- MOZ_NOT_REACHED("callable proxies should implement construct trap");
+ MOZ_ASSUME_NOT_REACHED("callable proxies should implement construct trap");
}
const char *
BaseProxyHandler::className(JSContext *cx, HandleObject proxy)
{
return IsFunctionProxy(proxy) ? "Function" : "Object";
}
JSString *
BaseProxyHandler::fun_toString(JSContext *cx, HandleObject proxy, unsigned indent)
{
- MOZ_NOT_REACHED("callable proxies should implement fun_toString trap");
+ MOZ_ASSUME_NOT_REACHED("callable proxies should implement fun_toString trap");
}
bool
BaseProxyHandler::regexp_toShared(JSContext *cx, HandleObject proxy,
RegExpGuard *g)
{
- MOZ_NOT_REACHED("This should have been a wrapped regexp");
+ MOZ_ASSUME_NOT_REACHED("This should have been a wrapped regexp");
}
bool
BaseProxyHandler::defaultValue(JSContext *cx, HandleObject proxy, JSType hint,
MutableHandleValue vp)
{
return DefaultValue(cx, proxy, hint, vp);
}
--- a/js/src/jsreflect.cpp
+++ b/js/src/jsreflect.cpp
@@ -109,17 +109,17 @@ typedef AutoValueVector NodeVector;
if (!(expr)) { \
JS_ReportErrorNumber(cx, js_GetErrorMessage, NULL, JSMSG_BAD_PARSE_NODE); \
return false; \
} \
JS_END_MACRO
#define LOCAL_NOT_REACHED(expr) \
JS_BEGIN_MACRO \
- MOZ_ASSUME_NOT_REACHED(expr); \
+ MOZ_ASSERT(false); \
JS_ReportErrorNumber(cx, js_GetErrorMessage, NULL, JSMSG_BAD_PARSE_NODE); \
return false; \
JS_END_MACRO
/*
* Builder class that constructs JavaScript AST node objects. See:
*
* https://developer.mozilla.org/en/SpiderMonkey/Parser_API
--- a/js/src/jsscript.cpp
+++ b/js/src/jsscript.cpp
@@ -376,17 +376,16 @@ FindBlockIndex(JSScript *script, StaticB
HeapPtrObject *vector = objects->vector;
unsigned length = objects->length;
for (unsigned i = 0; i < length; ++i) {
if (vector[i] == &block)
return i;
}
MOZ_ASSUME_NOT_REACHED("Block not found");
- return UINT32_MAX;
}
template<XDRMode mode>
bool
js::XDRScript(XDRState<mode> *xdr, HandleObject enclosingScope, HandleScript enclosingScript,
HandleFunction fun, MutableHandleScript scriptp)
{
/* NB: Keep this in sync with CloneScript. */
--- a/js/src/jstypedarray.cpp
+++ b/js/src/jstypedarray.cpp
@@ -2447,17 +2447,17 @@ class TypedArrayTemplate
}
case TypedArray::TYPE_FLOAT64: {
double *src = static_cast<double*>(viewData(tarray));
for (unsigned i = 0; i < srclen; ++i)
*dest++ = NativeType(*src++);
break;
}
default:
- MOZ_NOT_REACHED("copyFrom with a TypedArray of unknown type");
+ MOZ_ASSUME_NOT_REACHED("copyFrom with a TypedArray of unknown type");
}
return true;
}
static bool
copyFromWithOverlap(JSContext *cx, JSObject *self, JSObject *tarray, uint32_t offset)
{
@@ -2525,17 +2525,16 @@ class TypedArrayTemplate
case TypedArray::TYPE_FLOAT64: {
double *src = (double*) srcbuf;
for (unsigned i = 0; i < length(tarray); ++i)
*dest++ = NativeType(*src++);
break;
}
default:
MOZ_ASSUME_NOT_REACHED("copyFromWithOverlap with a TypedArray of unknown type");
- break;
}
js_free(srcbuf);
return true;
}
static JSObject *
createBufferWithSizeAndCount(JSContext *cx, uint32_t count)
@@ -3869,17 +3868,16 @@ js::IsTypedArrayConstructor(const Value
case TypedArray::TYPE_FLOAT32:
return IsNativeFunction(v, Float32Array::class_constructor);
case TypedArray::TYPE_FLOAT64:
return IsNativeFunction(v, Float64Array::class_constructor);
case TypedArray::TYPE_UINT8_CLAMPED:
return IsNativeFunction(v, Uint8ClampedArray::class_constructor);
}
MOZ_ASSUME_NOT_REACHED("unexpected typed array type");
- return false;
}
bool
js::IsTypedArrayBuffer(const Value &v)
{
return v.isObject() && v.toObject().is<ArrayBufferObject>();
}
@@ -4027,17 +4025,16 @@ JS_GetArrayBufferViewType(JSObject *obj)
if (!obj)
return ArrayBufferView::TYPE_MAX;
if (obj->isTypedArray())
return static_cast<JSArrayBufferViewType>(TypedArray::type(obj));
else if (obj->is<DataViewObject>())
return ArrayBufferView::TYPE_DATAVIEW;
MOZ_ASSUME_NOT_REACHED("invalid ArrayBufferView type");
- return ArrayBufferView::TYPE_MAX;
}
JS_FRIEND_API(int8_t *)
JS_GetInt8ArrayData(JSObject *obj)
{
obj = CheckedUnwrap(obj);
if (!obj)
return NULL;
--- a/js/src/jstypedarray.h
+++ b/js/src/jstypedarray.h
@@ -333,17 +333,16 @@ TypedArrayShift(ArrayBufferView::ViewTyp
case ArrayBufferView::TYPE_UINT32:
case ArrayBufferView::TYPE_FLOAT32:
return 2;
case ArrayBufferView::TYPE_FLOAT64:
return 3;
default:;
}
MOZ_ASSUME_NOT_REACHED("Unexpected array type");
- return 0;
}
class DataViewObject : public JSObject, public BufferView
{
public:
static Class class_;
private:
--- a/js/src/jstypedarrayinlines.h
+++ b/js/src/jstypedarrayinlines.h
@@ -152,17 +152,16 @@ TypedArray::slotWidth(int atype) {
case js::TypedArray::TYPE_INT32:
case js::TypedArray::TYPE_UINT32:
case js::TypedArray::TYPE_FLOAT32:
return 4;
case js::TypedArray::TYPE_FLOAT64:
return 8;
default:
MOZ_ASSUME_NOT_REACHED("invalid typed array type");
- return 0;
}
}
inline int
TypedArray::slotWidth(JSObject *obj) {
return slotWidth(type(obj));
}
--- a/js/src/jsversion.h
+++ b/js/src/jsversion.h
@@ -56,12 +56,12 @@
/* A kill-switch for bug 586842. Embedders shouldn't touch this! */
#define USE_NEW_OBJECT_REPRESENTATION 0
#if USE_NEW_OBJECT_REPRESENTATION
# define NEW_OBJECT_REPRESENTATION_ONLY() ((void)0)
#else
# define NEW_OBJECT_REPRESENTATION_ONLY() \
- MOZ_NOT_REACHED("don't call this! to be used in the new object representation")
+ MOZ_ASSUME_NOT_REACHED("don't call this! to be used in the new object representation")
#endif
#endif /* jsversion_h */
--- a/js/src/jsworkers.cpp
+++ b/js/src/jsworkers.cpp
@@ -439,23 +439,23 @@ WorkerThread::threadLoop()
}
}
#else /* JS_PARALLEL_COMPILATION */
bool
js::StartOffThreadAsmJSCompile(JSContext *cx, AsmJSParallelTask *asmData)
{
- MOZ_NOT_REACHED("Off thread compilation not available in non-THREADSAFE builds");
+ MOZ_ASSUME_NOT_REACHED("Off thread compilation not available in non-THREADSAFE builds");
}
bool
js::StartOffThreadIonCompile(JSContext *cx, ion::IonBuilder *builder)
{
- MOZ_NOT_REACHED("Off thread compilation not available in non-THREADSAFE builds");
+ MOZ_ASSUME_NOT_REACHED("Off thread compilation not available in non-THREADSAFE builds");
}
void
js::CancelOffThreadIonCompile(JSCompartment *compartment, JSScript *script)
{
}
#endif /* JS_PARALLEL_COMPILATION */
--- a/js/src/shell/jsoptparse.cpp
+++ b/js/src/shell/jsoptparse.cpp
@@ -305,17 +305,16 @@ OptionParser::handleOption(Option *opt,
char *value = NULL;
if (Result r = extractValue(argc, argv, i, &value))
return r;
StringArg arg(value, *i);
return opt->asMultiStringOption()->strings.append(arg) ? Okay : Fail;
}
default:
MOZ_ASSUME_NOT_REACHED("unhandled option kind");
- return Fail;
}
}
OptionParser::Result
OptionParser::handleArg(size_t argc, char **argv, size_t *i, bool *optionsAllowed)
{
if (nextArgument >= arguments.length())
return error("Too many arguments provided");
@@ -333,17 +332,16 @@ OptionParser::handleArg(size_t argc, cha
case OptionKindMultiString:
{
/* Don't advance the next argument -- there can only be one (final) variadic argument. */
StringArg value(argv[*i], *i);
return arg->asMultiStringOption()->strings.append(value) ? Okay : Fail;
}
default:
MOZ_ASSUME_NOT_REACHED("unhandled argument kind");
- return Fail;
}
}
OptionParser::Result
OptionParser::parseArgs(int inputArgc, char **argv)
{
JS_ASSERT(inputArgc >= 0);
size_t argc = inputArgc;
--- a/js/src/vm/ForkJoin.cpp
+++ b/js/src/vm/ForkJoin.cpp
@@ -77,51 +77,51 @@ bool
ForkJoinSlice::InitializeTLS()
{
return true;
}
JSRuntime *
ForkJoinSlice::runtime()
{
- MOZ_NOT_REACHED("Not THREADSAFE build");
+ MOZ_ASSUME_NOT_REACHED("Not THREADSAFE build");
}
bool
ForkJoinSlice::check()
{
- MOZ_NOT_REACHED("Not THREADSAFE build");
+ MOZ_ASSUME_NOT_REACHED("Not THREADSAFE build");
}
void
ForkJoinSlice::requestGC(JS::gcreason::Reason reason)
{
- MOZ_NOT_REACHED("Not THREADSAFE build");
+ MOZ_ASSUME_NOT_REACHED("Not THREADSAFE build");
}
void
ForkJoinSlice::requestZoneGC(JS::Zone *zone, JS::gcreason::Reason reason)
{
- MOZ_NOT_REACHED("Not THREADSAFE build");
+ MOZ_ASSUME_NOT_REACHED("Not THREADSAFE build");
}
void
ParallelBailoutRecord::setCause(ParallelBailoutCause cause,
JSScript *outermostScript,
JSScript *currentScript,
jsbytecode *currentPc)
{
- MOZ_NOT_REACHED("Not THREADSAFE build");
+ MOZ_ASSUME_NOT_REACHED("Not THREADSAFE build");
}
void
ParallelBailoutRecord::addTrace(JSScript *script,
jsbytecode *pc)
{
- MOZ_NOT_REACHED("Not THREADSAFE build");
+ MOZ_ASSUME_NOT_REACHED("Not THREADSAFE build");
}
bool
js::InSequentialOrExclusiveParallelSection()
{
return true;
}
--- a/js/src/vm/ObjectImpl.cpp
+++ b/js/src/vm/ObjectImpl.cpp
@@ -381,17 +381,17 @@ DenseElementsHeader::getOwnElement(JSCon
}
bool
SparseElementsHeader::getOwnElement(JSContext *cx, Handle<ObjectImpl*> obj, uint32_t index,
unsigned resolveFlags, PropDesc *desc)
{
MOZ_ASSERT(this == &obj->elementsHeader());
- MOZ_NOT_REACHED("NYI");
+ MOZ_ASSUME_NOT_REACHED("NYI");
}
template<typename T>
static Value
ElementToValue(const T &t)
{
return NumberValue(t);
}
@@ -421,27 +421,27 @@ TypedElementsHeader<T>::getOwnElement(JS
}
bool
ArrayBufferElementsHeader::getOwnElement(JSContext *cx, Handle<ObjectImpl*> obj, uint32_t index,
unsigned resolveFlags, PropDesc *desc)
{
MOZ_ASSERT(this == &obj->elementsHeader());
- MOZ_NOT_REACHED("NYI");
+ MOZ_ASSUME_NOT_REACHED("NYI");
}
bool
SparseElementsHeader::defineElement(JSContext *cx, Handle<ObjectImpl*> obj, uint32_t index,
const PropDesc &desc, bool shouldThrow, unsigned resolveFlags,
bool *succeeded)
{
MOZ_ASSERT(this == &obj->elementsHeader());
- MOZ_NOT_REACHED("NYI");
+ MOZ_ASSUME_NOT_REACHED("NYI");
}
bool
DenseElementsHeader::defineElement(JSContext *cx, Handle<ObjectImpl*> obj, uint32_t index,
const PropDesc &desc, bool shouldThrow, unsigned resolveFlags,
bool *succeeded)
{
MOZ_ASSERT(this == &obj->elementsHeader());
@@ -562,17 +562,16 @@ js::GetOwnProperty(JSContext *cx, Handle
NEW_OBJECT_REPRESENTATION_ONLY();
JS_CHECK_RECURSION(cx, return false);
Rooted<PropertyId> pid(cx, pid_);
if (static_cast<JSObject *>(obj.get())->isProxy()) {
MOZ_ASSUME_NOT_REACHED("NYI: proxy [[GetOwnProperty]]");
- return false;
}
RootedShape shape(cx, obj->nativeLookup(cx, pid));
if (!shape) {
/* Not found: attempt to resolve it. */
Class *clasp = obj->getClass();
JSResolveOp resolve = clasp->resolve;
if (resolve != JS_ResolveStub) {
@@ -605,17 +604,16 @@ js::GetOwnProperty(JSContext *cx, Handle
if (shape->isAccessorDescriptor()) {
*desc = PropDesc(shape->getterValue(), shape->setterValue(),
shape->enumerability(), shape->configurability());
return true;
}
MOZ_ASSUME_NOT_REACHED("NYI: PropertyOp-based properties");
- return false;
}
bool
js::GetOwnElement(JSContext *cx, Handle<ObjectImpl*> obj, uint32_t index, unsigned resolveFlags,
PropDesc *desc)
{
ElementsHeader &header = obj->elementsHeader();
switch (header.kind()) {
@@ -641,17 +639,16 @@ js::GetOwnElement(JSContext *cx, Handle<
return header.asFloat32Elements().getOwnElement(cx, obj, index, resolveFlags, desc);
case Float64Elements:
return header.asFloat64Elements().getOwnElement(cx, obj, index, resolveFlags, desc);
case ArrayBufferElements:
return header.asArrayBufferElements().getOwnElement(cx, obj, index, resolveFlags, desc);
}
MOZ_ASSUME_NOT_REACHED("bad elements kind!");
- return false;
}
bool
js::GetProperty(JSContext *cx, Handle<ObjectImpl*> obj, Handle<ObjectImpl*> receiver,
Handle<PropertyId> pid, unsigned resolveFlags, MutableHandle<Value> vp)
{
NEW_OBJECT_REPRESENTATION_ONLY();
@@ -659,17 +656,16 @@ js::GetProperty(JSContext *cx, Handle<Ob
Rooted<ObjectImpl*> current(cx, obj);
do {
MOZ_ASSERT(obj);
if (Downcast(current)->isProxy()) {
MOZ_ASSUME_NOT_REACHED("NYI: proxy [[GetP]]");
- return false;
}
AutoPropDescRooter desc(cx);
if (!GetOwnProperty(cx, current, pid, resolveFlags, &desc.getPropDesc()))
return false;
/* No property? Recur or bottom out. */
if (desc.isUndefined()) {
@@ -704,38 +700,35 @@ js::GetProperty(JSContext *cx, Handle<Ob
bool ok = Invoke(cx, args);
vp.set(args.rval());
return ok;
}
/* Otherwise it's a PropertyOp-based property. XXX handle this! */
MOZ_ASSUME_NOT_REACHED("NYI: handle PropertyOp'd properties here");
- return false;
} while (false);
MOZ_ASSUME_NOT_REACHED("buggy control flow");
- return false;
}
bool
js::GetElement(JSContext *cx, Handle<ObjectImpl*> obj, Handle<ObjectImpl*> receiver, uint32_t index,
unsigned resolveFlags, Value *vp)
{
NEW_OBJECT_REPRESENTATION_ONLY();
Rooted<ObjectImpl*> current(cx, obj);
RootedValue getter(cx);
do {
MOZ_ASSERT(current);
if (Downcast(current)->isProxy()) {
MOZ_ASSUME_NOT_REACHED("NYI: proxy [[GetP]]");
- return false;
}
PropDesc desc;
if (!GetOwnElement(cx, current, index, resolveFlags, &desc))
return false;
/* No property? Recur or bottom out. */
if (desc.isUndefined()) {
@@ -771,37 +764,34 @@ js::GetElement(JSContext *cx, Handle<Obj
bool ok = Invoke(cx, args);
*vp = args.rval();
return ok;
}
/* Otherwise it's a PropertyOp-based property. XXX handle this! */
MOZ_ASSUME_NOT_REACHED("NYI: handle PropertyOp'd properties here");
- return false;
} while (false);
MOZ_ASSUME_NOT_REACHED("buggy control flow");
- return false;
}
bool
js::HasElement(JSContext *cx, Handle<ObjectImpl*> obj, uint32_t index, unsigned resolveFlags,
bool *found)
{
NEW_OBJECT_REPRESENTATION_ONLY();
Rooted<ObjectImpl*> current(cx, obj);
do {
MOZ_ASSERT(current);
if (Downcast(current)->isProxy()) {
MOZ_ASSUME_NOT_REACHED("NYI: proxy [[HasProperty]]");
- return false;
}
PropDesc prop;
if (!GetOwnElement(cx, current, index, resolveFlags, &prop))
return false;
if (!prop.isUndefined()) {
*found = true;
@@ -812,17 +802,16 @@ js::HasElement(JSContext *cx, Handle<Obj
if (current)
continue;
*found = false;
return true;
} while (false);
MOZ_ASSUME_NOT_REACHED("buggy control flow");
- return false;
}
bool
js::DefineElement(JSContext *cx, Handle<ObjectImpl*> obj, uint32_t index, const PropDesc &desc,
bool shouldThrow, unsigned resolveFlags, bool *succeeded)
{
NEW_OBJECT_REPRESENTATION_ONLY();
@@ -862,37 +851,37 @@ js::DefineElement(JSContext *cx, Handle<
case Float64Elements:
return header.asFloat64Elements().defineElement(cx, obj, index, desc, shouldThrow,
resolveFlags, succeeded);
case ArrayBufferElements:
return header.asArrayBufferElements().defineElement(cx, obj, index, desc, shouldThrow,
resolveFlags, succeeded);
}
- MOZ_NOT_REACHED("bad elements kind!");
+ MOZ_ASSUME_NOT_REACHED("bad elements kind!");
}
bool
SparseElementsHeader::setElement(JSContext *cx, Handle<ObjectImpl*> obj,
Handle<ObjectImpl*> receiver, uint32_t index, const Value &v,
unsigned resolveFlags, bool *succeeded)
{
MOZ_ASSERT(this == &obj->elementsHeader());
- MOZ_NOT_REACHED("NYI");
+ MOZ_ASSUME_NOT_REACHED("NYI");
}
bool
DenseElementsHeader::setElement(JSContext *cx, Handle<ObjectImpl*> obj,
Handle<ObjectImpl*> receiver, uint32_t index, const Value &v,
unsigned resolveFlags, bool *succeeded)
{
MOZ_ASSERT(this == &obj->elementsHeader());
- MOZ_NOT_REACHED("NYI");
+ MOZ_ASSUME_NOT_REACHED("NYI");
}
template <typename T>
bool
TypedElementsHeader<T>::setElement(JSContext *cx, Handle<ObjectImpl*> obj,
Handle<ObjectImpl*> receiver, uint32_t index, const Value &v,
unsigned resolveFlags, bool *succeeded)
{
@@ -957,17 +946,16 @@ js::SetElement(JSContext *cx, Handle<Obj
MOZ_ASSERT(receiver);
do {
MOZ_ASSERT(current);
if (Downcast(current)->isProxy()) {
MOZ_ASSUME_NOT_REACHED("NYI: proxy [[SetP]]");
- return false;
}
PropDesc ownDesc;
if (!GetOwnElement(cx, current, index, resolveFlags, &ownDesc))
return false;
if (!ownDesc.isUndefined()) {
if (ownDesc.isDataDescriptor()) {
@@ -1002,29 +990,27 @@ js::SetElement(JSContext *cx, Handle<Obj
args.setThis(ObjectValue(*current));
args[0] = v;
*succeeded = true;
return Invoke(cx, args);
}
MOZ_ASSUME_NOT_REACHED("NYI: setting PropertyOp-based property");
- return false;
}
current = current->getProto();
if (current)
continue;
PropDesc newDesc(v, PropDesc::Writable, PropDesc::Enumerable, PropDesc::Configurable);
return DefineElement(cx, receiver, index, newDesc, false, resolveFlags, succeeded);
} while (false);
MOZ_ASSUME_NOT_REACHED("buggy control flow");
- return false;
}
void
AutoPropDescRooter::trace(JSTracer *trc)
{
gc::MarkValueRoot(trc, &propDesc.pd_, "AutoPropDescRooter pd");
gc::MarkValueRoot(trc, &propDesc.value_, "AutoPropDescRooter value");
gc::MarkValueRoot(trc, &propDesc.get_, "AutoPropDescRooter get");
--- a/js/src/vm/ObjectImpl.h
+++ b/js/src/vm/ObjectImpl.h
@@ -685,17 +685,17 @@ class TypedElementsHeader : public Eleme
private:
TypedElementsHeader(const TypedElementsHeader &other) MOZ_DELETE;
void operator=(const TypedElementsHeader &other) MOZ_DELETE;
};
template<typename T> inline void
TypedElementsHeader<T>::assign(uint32_t index, double d)
{
- MOZ_NOT_REACHED("didn't specialize for this element type");
+ MOZ_ASSUME_NOT_REACHED("didn't specialize for this element type");
}
template<> inline void
TypedElementsHeader<uint8_clamped>::assign(uint32_t index, double d)
{
double i = ToInteger(d);
uint8_t u = (i <= 0)
? 0
@@ -1265,19 +1265,17 @@ class ObjectImpl : public gc::Cell
}
uint32_t getDenseCapacity() {
JS_ASSERT(uninlinedIsNative());
return getElementsHeader()->capacity;
}
bool makeElementsSparse(JSContext *cx) {
NEW_OBJECT_REPRESENTATION_ONLY();
-
MOZ_ASSUME_NOT_REACHED("NYI");
- return false;
}
inline bool isProxy() const;
protected:
#ifdef DEBUG
void checkShapeConsistency();
#else
@@ -1394,19 +1392,17 @@ class ObjectImpl : public gc::Cell
ConvertToSparse,
Succeeded
};
DenseElementsResult ensureDenseElementsInitialized(JSContext *cx, uint32_t index,
uint32_t extra)
{
NEW_OBJECT_REPRESENTATION_ONLY();
-
MOZ_ASSUME_NOT_REACHED("NYI");
- return Failure;
}
/*
* These functions are currently public for simplicity; in the long run
* it may make sense to make at least some of them private.
*/
public:
--- a/js/src/vm/RegExpObject.cpp
+++ b/js/src/vm/RegExpObject.cpp
@@ -400,17 +400,16 @@ RegExpShared::~RegExpShared()
}
void
RegExpShared::reportYarrError(JSContext *cx, TokenStream *ts, ErrorCode error)
{
switch (error) {
case JSC::Yarr::NoError:
MOZ_ASSUME_NOT_REACHED("Called reportYarrError with value for no error");
- return;
#define COMPILE_EMSG(__code, __msg) \
case JSC::Yarr::__code: \
if (ts) \
ts->reportError(__msg); \
else \
JS_ReportErrorFlagsAndNumberUC(cx, JSREPORT_ERROR, js_GetErrorMessage, NULL, __msg); \
return
COMPILE_EMSG(PatternTooLarge, JSMSG_REGEXP_TOO_COMPLEX);
--- a/js/src/vm/Stack-inl.h
+++ b/js/src/vm/Stack-inl.h
@@ -606,17 +606,16 @@ AbstractFramePtr::isDebuggerFrame() cons
{
if (isStackFrame())
return asStackFrame()->isDebuggerFrame();
#ifdef JS_ION
return asBaselineFrame()->isDebuggerFrame();
#else
MOZ_ASSUME_NOT_REACHED("Invalid frame");
#endif
- return false;
}
inline JSScript *
AbstractFramePtr::script() const
{
if (isStackFrame())
return asStackFrame()->script();
#ifdef JS_ION
return asBaselineFrame()->script();
--- a/js/src/vm/Stack.cpp
+++ b/js/src/vm/Stack.cpp
@@ -758,17 +758,16 @@ ScriptFrameIter::compartment() const
switch (data_.state_) {
case DONE:
break;
case SCRIPTED:
case JIT:
return data_.activations_.activation()->compartment();
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return NULL;
}
bool
ScriptFrameIter::isFunctionFrame() const
{
switch (data_.state_) {
case DONE:
break;
@@ -780,17 +779,16 @@ ScriptFrameIter::isFunctionFrame() const
if (data_.ionFrames_.isBaselineJS())
return data_.ionFrames_.isFunctionFrame();
return ionInlineFrames_.isFunctionFrame();
#else
break;
#endif
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return false;
}
bool
ScriptFrameIter::isGlobalFrame() const
{
switch (data_.state_) {
case DONE:
break;
@@ -802,17 +800,16 @@ ScriptFrameIter::isGlobalFrame() const
return data_.ionFrames_.baselineFrame()->isGlobalFrame();
JS_ASSERT(!script()->isForEval());
return !script()->function();
#else
break;
#endif
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return false;
}
bool
ScriptFrameIter::isEvalFrame() const
{
switch (data_.state_) {
case DONE:
break;
@@ -824,48 +821,45 @@ ScriptFrameIter::isEvalFrame() const
return data_.ionFrames_.baselineFrame()->isEvalFrame();
JS_ASSERT(!script()->isForEval());
return false;
#else
break;
#endif
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return false;
}
bool
ScriptFrameIter::isNonEvalFunctionFrame() const
{
JS_ASSERT(!done());
switch (data_.state_) {
case DONE:
break;
case SCRIPTED:
return interpFrame()->isNonEvalFunctionFrame();
case JIT:
return !isEvalFrame() && isFunctionFrame();
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return false;
}
bool
ScriptFrameIter::isGeneratorFrame() const
{
switch (data_.state_) {
case DONE:
break;
case SCRIPTED:
return interpFrame()->isGeneratorFrame();
case JIT:
return false;
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return false;
}
bool
ScriptFrameIter::isConstructing() const
{
switch (data_.state_) {
case DONE:
break;
@@ -877,17 +871,16 @@ ScriptFrameIter::isConstructing() const
return data_.ionFrames_.isConstructing();
#else
break;
#endif
case SCRIPTED:
return interpFrame()->isConstructing();
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return false;
}
AbstractFramePtr
ScriptFrameIter::abstractFramePtr() const
{
switch (data_.state_) {
case DONE:
break;
@@ -897,17 +890,16 @@ ScriptFrameIter::abstractFramePtr() cons
return data_.ionFrames_.baselineFrame();
#endif
break;
case SCRIPTED:
JS_ASSERT(interpFrame());
return AbstractFramePtr(interpFrame());
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return NullFramePtr();
}
void
ScriptFrameIter::updatePcQuadratic()
{
switch (data_.state_) {
case DONE:
break;
@@ -968,17 +960,16 @@ ScriptFrameIter::callee() const
return data_.ionFrames_.callee();
JS_ASSERT(data_.ionFrames_.isOptimizedJS());
return ionInlineFrames_.callee();
#else
break;
#endif
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return NULL;
}
Value
ScriptFrameIter::calleev() const
{
switch (data_.state_) {
case DONE:
break;
@@ -988,17 +979,16 @@ ScriptFrameIter::calleev() const
case JIT:
#ifdef JS_ION
return ObjectValue(*callee());
#else
break;
#endif
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return Value();
}
unsigned
ScriptFrameIter::numActualArgs() const
{
switch (data_.state_) {
case DONE:
break;
@@ -1012,17 +1002,16 @@ ScriptFrameIter::numActualArgs() const
JS_ASSERT(data_.ionFrames_.isBaselineJS());
return data_.ionFrames_.numActualArgs();
#else
break;
#endif
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return 0;
}
Value
ScriptFrameIter::unaliasedActual(unsigned i, MaybeCheckAliasing checkAliasing) const
{
switch (data_.state_) {
case DONE:
break;
@@ -1032,17 +1021,16 @@ ScriptFrameIter::unaliasedActual(unsigne
#ifdef JS_ION
JS_ASSERT(data_.ionFrames_.isBaselineJS());
return data_.ionFrames_.baselineFrame()->unaliasedActual(i, checkAliasing);
#else
break;
#endif
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return NullValue();
}
JSObject *
ScriptFrameIter::scopeChain() const
{
switch (data_.state_) {
case DONE:
break;
@@ -1053,17 +1041,16 @@ ScriptFrameIter::scopeChain() const
return data_.ionFrames_.baselineFrame()->scopeChain();
#else
break;
#endif
case SCRIPTED:
return interpFrame()->scopeChain();
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return NULL;
}
CallObject &
ScriptFrameIter::callObj() const
{
JS_ASSERT(callee()->isHeavyweight());
JSObject *pobj = scopeChain();
@@ -1084,17 +1071,16 @@ ScriptFrameIter::hasArgsObj() const
#ifdef JS_ION
JS_ASSERT(data_.ionFrames_.isBaselineJS());
return data_.ionFrames_.baselineFrame()->hasArgsObj();
#else
break;
#endif
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return false;
}
ArgumentsObject &
ScriptFrameIter::argsObj() const
{
JS_ASSERT(hasArgsObj());
switch (data_.state_) {
@@ -1106,17 +1092,16 @@ ScriptFrameIter::argsObj() const
return data_.ionFrames_.baselineFrame()->argsObj();
#else
break;
#endif
case SCRIPTED:
return interpFrame()->argsObj();
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return interpFrame()->argsObj();
}
bool
ScriptFrameIter::computeThis() const
{
JS_ASSERT(!done());
if (!isIon()) {
JS_ASSERT(data_.cx_);
@@ -1138,17 +1123,16 @@ ScriptFrameIter::thisv() const
return data_.ionFrames_.baselineFrame()->thisValue();
#else
break;
#endif
case SCRIPTED:
return interpFrame()->thisValue();
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return NullValue();
}
Value
ScriptFrameIter::returnValue() const
{
switch (data_.state_) {
case DONE:
break;
@@ -1157,17 +1141,16 @@ ScriptFrameIter::returnValue() const
if (data_.ionFrames_.isBaselineJS())
return *data_.ionFrames_.baselineFrame()->returnValue();
#endif
break;
case SCRIPTED:
return interpFrame()->returnValue();
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return NullValue();
}
void
ScriptFrameIter::setReturnValue(const Value &v)
{
switch (data_.state_) {
case DONE:
break;
@@ -1202,17 +1185,16 @@ ScriptFrameIter::numFrameSlots() const
break;
#endif
}
case SCRIPTED:
JS_ASSERT(data_.interpFrames_.sp() >= interpFrame()->base());
return data_.interpFrames_.sp() - interpFrame()->base();
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return 0;
}
Value
ScriptFrameIter::frameSlotValue(size_t index) const
{
switch (data_.state_) {
case DONE:
break;
@@ -1228,17 +1210,16 @@ ScriptFrameIter::frameSlotValue(size_t i
return *data_.ionFrames_.baselineFrame()->valueSlot(index);
#else
break;
#endif
case SCRIPTED:
return interpFrame()->base()[index];
}
MOZ_ASSUME_NOT_REACHED("Unexpected state");
- return NullValue();
}
#if defined(_MSC_VER)
# pragma optimize("", on)
#endif
/*****************************************************************************/
@@ -1257,17 +1238,16 @@ bool
AbstractFramePtr::hasPushedSPSFrame() const
{
if (isStackFrame())
return asStackFrame()->hasPushedSPSFrame();
#ifdef JS_ION
return asBaselineFrame()->hasPushedSPSFrame();
#else
MOZ_ASSUME_NOT_REACHED("Invalid frame");
- return false;
#endif
}
#ifdef DEBUG
void
js::CheckLocalUnaliased(MaybeCheckAliasing checkAliasing, JSScript *script,
StaticBlockObject *maybeBlock, unsigned i)
{
--- a/js/xpconnect/src/XPCJSRuntime.cpp
+++ b/js/xpconnect/src/XPCJSRuntime.cpp
@@ -288,17 +288,17 @@ bool CompartmentPrivate::TryParseLocatio
return true;
// Current chain item couldn't be parsed.
// Don't forget whitespace in " -> "
idx -= 1;
// Strip current item and continue
chain = Substring(chain, 0, idx);
}
- MOZ_NOT_REACHED("Chain parser loop does not terminate");
+ MOZ_ASSUME_NOT_REACHED("Chain parser loop does not terminate");
}
bool CompartmentPrivate::TryParseLocationURICandidate(const nsACString& uristr)
{
nsCOMPtr<nsIURI> uri;
if (NS_FAILED(NS_NewURI(getter_AddRefs(uri), uristr)))
return false;
--- a/js/xpconnect/wrappers/WrapperFactory.cpp
+++ b/js/xpconnect/wrappers/WrapperFactory.cpp
@@ -618,17 +618,17 @@ WrapperFactory::WrapForSameCompartmentXr
// Select the appropriate proxy handler.
Wrapper *wrapper = NULL;
if (type == XrayForWrappedNative)
wrapper = &SCPermissiveXrayXPCWN::singleton;
else if (type == XrayForDOMObject)
wrapper = &SCPermissiveXrayDOM::singleton;
else
- MOZ_NOT_REACHED("Bad Xray type");
+ MOZ_ASSUME_NOT_REACHED("Bad Xray type");
// Make the Xray.
JSObject *parent = JS_GetGlobalForObject(cx, obj);
return Wrapper::New(cx, obj, NULL, parent, wrapper);
}
bool
--- a/js/xpconnect/wrappers/XrayWrapper.cpp
+++ b/js/xpconnect/wrappers/XrayWrapper.cpp
@@ -143,22 +143,22 @@ public:
// properties.
virtual bool resolveOwnProperty(JSContext *cx, Wrapper &jsWrapper,
HandleObject wrapper, HandleObject holder,
HandleId id, JSPropertyDescriptor *desc, unsigned flags);
static bool call(JSContext *cx, HandleObject wrapper,
const JS::CallArgs &args, js::Wrapper& baseInstance)
{
- MOZ_NOT_REACHED("Call trap currently implemented only for XPCWNs");
+ MOZ_ASSUME_NOT_REACHED("Call trap currently implemented only for XPCWNs");
}
static bool construct(JSContext *cx, HandleObject wrapper,
const JS::CallArgs &args, js::Wrapper& baseInstance)
{
- MOZ_NOT_REACHED("Call trap currently implemented only for XPCWNs");
+ MOZ_ASSUME_NOT_REACHED("Call trap currently implemented only for XPCWNs");
}
virtual void preserveWrapper(JSObject *target) = 0;
JSObject* getExpandoObject(JSContext *cx, HandleObject target,
HandleObject consumer);
JSObject* ensureExpandoObject(JSContext *cx, HandleObject wrapper,
HandleObject target);
--- a/layout/base/nsCSSFrameConstructor.cpp
+++ b/layout/base/nsCSSFrameConstructor.cpp
@@ -9758,17 +9758,16 @@ nsCSSFrameConstructor::CreateNeededTable
break;
case eTypeTable:
// Either colgroup or rowgroup, depending on what we're grouping.
wrapperType = groupingParentType == eTypeColGroup ?
eTypeColGroup : eTypeRowGroup;
break;
default:
MOZ_CRASH("Colgroups should be suppresing non-col child items");
- break;
}
const PseudoParentData& pseudoData = sPseudoParentData[wrapperType];
nsIAtom* pseudoType = *pseudoData.mPseudoType;
nsStyleContext* parentStyle = aParentFrame->StyleContext();
nsIContent* parentContent = aParentFrame->GetContent();
if (pseudoType == nsCSSAnonBoxes::table &&
--- a/layout/generic/nsFlexContainerFrame.cpp
+++ b/layout/generic/nsFlexContainerFrame.cpp
@@ -1896,18 +1896,16 @@ FlexboxAxisTracker::FlexboxAxisTracker(n
case NS_STYLE_FLEX_DIRECTION_COLUMN:
mMainAxis = blockDimension;
break;
case NS_STYLE_FLEX_DIRECTION_COLUMN_REVERSE:
mMainAxis = GetReverseAxis(blockDimension);
break;
default:
MOZ_CRASH("Unexpected computed value for 'flex-flow' property");
- mMainAxis = inlineDimension;
- break;
}
// Determine cross axis:
// (This is set up so that a bogus |flexDirection| value will
// give us blockDimension.
if (flexDirection == NS_STYLE_FLEX_DIRECTION_COLUMN ||
flexDirection == NS_STYLE_FLEX_DIRECTION_COLUMN_REVERSE) {
mCrossAxis = inlineDimension;
--- a/modules/libjar/nsJARProtocolHandler.cpp
+++ b/modules/libjar/nsJARProtocolHandler.cpp
@@ -71,17 +71,16 @@ nsJARProtocolHandler::RemoteOpenFileInPr
nsIRemoteOpenFileListener *aListener)
{
MOZ_ASSERT(NS_IsMainThread());
MOZ_ASSERT(aRemoteFile);
MOZ_ASSERT(aListener);
if (IsMainProcess()) {
MOZ_CRASH("Shouldn't be called in the main process!");
- return false;
}
RemoteFileListenerArray *listeners;
if (mRemoteFileListeners.Get(aRemoteFile, &listeners)) {
listeners->AppendElement(aListener);
return true;
}
@@ -95,17 +94,16 @@ void
nsJARProtocolHandler::RemoteOpenFileComplete(nsIHashable *aRemoteFile,
nsresult aStatus)
{
MOZ_ASSERT(NS_IsMainThread());
MOZ_ASSERT(aRemoteFile);
if (IsMainProcess()) {
MOZ_CRASH("Shouldn't be called in the main process!");
- return;
}
RemoteFileListenerArray *tempListeners;
if (!mRemoteFileListeners.Get(aRemoteFile, &tempListeners)) {
return;
}
// Save the listeners in a stack array. The call to Remove() below will
--- a/modules/libpref/src/prefapi.cpp
+++ b/modules/libpref/src/prefapi.cpp
@@ -289,17 +289,16 @@ SetPrefValue(const char* aPrefName, cons
case dom::PrefValue::Tint32_t:
return PREF_SetIntPref(aPrefName, aValue.get_int32_t(),
setDefault);
case dom::PrefValue::Tbool:
return PREF_SetBoolPref(aPrefName, aValue.get_bool(),
setDefault);
default:
MOZ_CRASH();
- return NS_ERROR_FAILURE;
}
}
nsresult
pref_SetPref(const dom::PrefSetting& aPref)
{
const char* prefName = aPref.name().get();
const dom::MaybePrefValue& defaultValue = aPref.defaultValue();
--- a/netwerk/ipc/RemoteOpenFileChild.cpp
+++ b/netwerk/ipc/RemoteOpenFileChild.cpp
@@ -199,20 +199,17 @@ void
RemoteOpenFileChild::OnCachedFileDescriptor(const nsAString& aPath,
const FileDescriptor& aFD)
{
#ifdef DEBUG
if (!aPath.IsEmpty()) {
MOZ_ASSERT(mFile);
nsString path;
- if (NS_FAILED(mFile->GetPath(path))) {
- MOZ_CRASH("Couldn't get path from file!");
- }
-
+ MOZ_ASSERT(NS_SUCCEEDED(mFile->GetPath(path)));
MOZ_ASSERT(path == aPath, "Paths don't match!");
}
#endif
HandleFileDescriptorAndNotifyListener(aFD, /* aFromRecvDelete */ false);
}
void
--- a/security/manager/ssl/src/ScopedNSSTypes.h
+++ b/security/manager/ssl/src/ScopedNSSTypes.h
@@ -48,17 +48,16 @@ uint8_t_ptr_cast(const char * p) { retur
// IMPORTANT: This must be called immediately after the function that set the
// error code. Prefer using MapSECStatus to this.
inline nsresult
PRErrorCode_to_nsresult(PRErrorCode error)
{
if (!error) {
MOZ_CRASH("Function failed without calling PR_GetError");
- return NS_ERROR_UNEXPECTED;
}
// From NSSErrorsService::GetXPCOMFromNSSError
// XXX Don't make up nsresults, it's supposed to be an enum (bug 778113)
return (nsresult)NS_ERROR_GENERATE_FAILURE(NS_ERROR_MODULE_SECURITY,
-1 * error);
}
--- a/security/manager/ssl/src/nsUsageArrayHelper.cpp
+++ b/security/manager/ssl/src/nsUsageArrayHelper.cpp
@@ -64,17 +64,16 @@ nsUsageArrayHelper::check(uint32_t previ
SECCertificateUsage aCertUsage,
PRTime time,
CertVerifier::Flags flags,
uint32_t &aCounter,
PRUnichar **outUsages)
{
if (!aCertUsage) {
MOZ_CRASH("caller should have supplied non-zero aCertUsage");
- return nsIX509Cert::NOT_VERIFIED_UNKNOWN;
}
if (isFatalError(previousCheckResult)) {
return previousCheckResult;
}
nsAutoCString typestr;
switch (aCertUsage) {
@@ -111,17 +110,16 @@ nsUsageArrayHelper::check(uint32_t previ
case certificateUsageStatusResponder:
typestr = "VerifyStatusResponder";
break;
case certificateUsageAnyCA:
typestr = "VerifyAnyCA";
break;
default:
MOZ_CRASH("unknown cert usage passed to check()");
- return nsIX509Cert::NOT_VERIFIED_UNKNOWN;
}
SECStatus rv = certVerifier->VerifyCert(mCert, aCertUsage,
time, nullptr /*XXX:wincx*/, flags);
if (rv == SECSuccess) {
typestr.Append(suffix);
nsAutoString verifyDesc;
--- a/toolkit/components/telemetry/Telemetry.cpp
+++ b/toolkit/components/telemetry/Telemetry.cpp
@@ -667,17 +667,16 @@ JSHistogram_Snapshot(JSContext *cx, unsi
case REFLECT_CORRUPT:
JS_ReportError(cx, "Histogram is corrupt");
return JS_FALSE;
case REFLECT_OK:
JS_SET_RVAL(cx, vp, OBJECT_TO_JSVAL(snapshot));
return JS_TRUE;
default:
MOZ_CRASH("unhandled reflection status");
- return JS_FALSE;
}
}
JSBool
JSHistogram_Clear(JSContext *cx, unsigned argc, JS::Value *vp)
{
JSObject *obj = JS_THIS_OBJECT(cx, vp);
if (!obj) {
--- a/toolkit/identity/IdentityCryptoService.cpp
+++ b/toolkit/identity/IdentityCryptoService.cpp
@@ -352,21 +352,19 @@ GenerateKeyPair(PK11SlotInfo * slot,
PR_FALSE /*isPerm*/,
PR_TRUE /*isSensitive*/,
NULL /*&pwdata*/);
if (!*privateKey) {
MOZ_ASSERT(!*publicKey);
return PRErrorCode_to_nsresult(PR_GetError());
}
if (!*publicKey) {
- SECKEY_DestroyPrivateKey(*privateKey);
- *privateKey = NULL;
- MOZ_CRASH("PK11_GnerateKeyPair returned private key without public "
- "key");
- return NS_ERROR_UNEXPECTED;
+ SECKEY_DestroyPrivateKey(*privateKey);
+ *privateKey = NULL;
+ MOZ_CRASH("PK11_GnerateKeyPair returned private key without public key");
}
return NS_OK;
}
MOZ_WARN_UNUSED_RESULT nsresult
GenerateRSAKeyPair(PK11SlotInfo * slot,
@@ -464,17 +462,16 @@ KeyGenRunnable::Run()
case rsaKey:
mRv = GenerateRSAKeyPair(slot, &privk, &pubk);
break;
case dsaKey:
mRv = GenerateDSAKeyPair(slot, &privk, &pubk);
break;
default:
MOZ_CRASH("unknown key type");
- mRv = NS_ERROR_UNEXPECTED;
}
PK11_FreeSlot(slot);
if (NS_SUCCEEDED(mRv)) {
MOZ_ASSERT(privk);
MOZ_ASSERT(pubk);
// mKeyPair will take over ownership of privk and pubk
--- a/widget/gonk/nsWindow.cpp
+++ b/widget/gonk/nsWindow.cpp
@@ -170,17 +170,16 @@ nsWindow::nsWindow()
break;
case nsIScreen::ROTATION_180_DEG:
sRotationMatrix.Translate(gfxPoint(gScreenBounds.width,
gScreenBounds.height));
sRotationMatrix.Rotate(M_PI);
break;
default:
MOZ_CRASH("Unknown rotation");
- break;
}
sVirtualBounds = gScreenBounds;
sScreenInitialized = true;
nsAppShell::NotifyScreenInitialized();
// This is a hack to force initialization of the compositor
@@ -843,17 +842,16 @@ ComputeOrientation(uint32_t aRotation, c
case nsIScreen::ROTATION_180_DEG:
return (naturallyPortrait ? eScreenOrientation_PortraitSecondary :
eScreenOrientation_LandscapeSecondary);
case nsIScreen::ROTATION_270_DEG:
return (naturallyPortrait ? eScreenOrientation_LandscapeSecondary :
eScreenOrientation_PortraitSecondary);
default:
MOZ_CRASH("Gonk screen must always have a known rotation");
- return eScreenOrientation_None;
}
}
/*static*/ uint32_t
nsScreenGonk::GetRotation()
{
return sScreenRotation;
}
--- a/widget/gtk2/nsGtkKeyUtils.cpp
+++ b/widget/gtk2/nsGtkKeyUtils.cpp
@@ -492,17 +492,16 @@ KeymapWrapper::InitBySystemSettings()
case INDEX_LEVEL3:
modifier = LEVEL3;
break;
case INDEX_LEVEL5:
modifier = LEVEL5;
break;
default:
MOZ_CRASH("All indexes must be handled here");
- break;
}
for (uint32_t j = 0; j < ArrayLength(mod); j++) {
if (modifier == mod[j]) {
mModifierMasks[i] |= 1 << (j + 3);
}
}
}
--- a/widget/os2/nsWindow.cpp
+++ b/widget/os2/nsWindow.cpp
@@ -2522,17 +2522,16 @@ PlatformToNSAttr(uint8_t aAttr)
case CP_ATTR_TARGET_NOTCONVERTED:
return NS_TEXTRANGE_SELECTEDRAWTEXT;
case CP_ATTR_TARGET_CONVERTED:
return NS_TEXTRANGE_SELECTEDCONVERTEDTEXT;
default:
MOZ_CRASH("unknown attribute");
- return NS_TEXTRANGE_RAWINPUT;
}
}
bool nsWindow::ImeConversionString(HIMI himi)
{
ULONG ulBufLen;
// Get a buffer size
ulBufLen = 0;
--- a/widget/windows/KeyboardLayout.cpp
+++ b/widget/windows/KeyboardLayout.cpp
@@ -493,17 +493,16 @@ NativeKey::NativeKey(nsWindowBase* aWidg
break;
case VK_SHIFT:
// Neither left shift nor right shift is not an extended key,
// let's use VK_LSHIFT for invalid scan code.
mVirtualKeyCode = VK_LSHIFT;
break;
default:
MOZ_CRASH("Unsupported mOriginalVirtualKeyCode");
- break;
}
break;
}
NS_ASSERTION(!mVirtualKeyCode,
"mVirtualKeyCode has been computed already");
// Otherwise, compute the virtual keycode with MapVirtualKeyEx().
@@ -530,34 +529,32 @@ NativeKey::NativeKey(nsWindowBase* aWidg
if (mVirtualKeyCode != VK_LSHIFT && mVirtualKeyCode != VK_RSHIFT) {
// Neither left shift nor right shift is not an extended key,
// let's use VK_LSHIFT for invalid scan code.
mVirtualKeyCode = VK_LSHIFT;
}
break;
default:
MOZ_CRASH("Unsupported mOriginalVirtualKeyCode");
- break;
}
break;
}
case WM_CHAR:
case WM_UNICHAR:
case WM_SYSCHAR:
// We cannot compute the virtual key code from WM_CHAR message on WinXP
// if it's caused by an extended key.
if (!canComputeVirtualKeyCodeFromScanCode) {
break;
}
mVirtualKeyCode = mOriginalVirtualKeyCode =
ComputeVirtualKeyCodeFromScanCodeEx();
break;
default:
MOZ_CRASH("Unsupported message");
- break;
}
if (!mVirtualKeyCode) {
mVirtualKeyCode = mOriginalVirtualKeyCode;
}
mDOMKeyCode =
keyboardLayout->ConvertNativeKeyCodeToDOMKeyCode(mOriginalVirtualKeyCode);
@@ -733,17 +730,16 @@ NativeKey::InitKeyEvent(nsKeyEvent& aKey
// state of IME.
aKeyEvent.mFlags.mDefaultPrevented =
(mOriginalVirtualKeyCode == VK_MENU && mMsg.message != WM_SYSKEYUP);
break;
case NS_KEY_PRESS:
break;
default:
MOZ_CRASH("Invalid event message");
- break;
}
aKeyEvent.mKeyNameIndex = mKeyNameIndex;
aKeyEvent.location = GetKeyLocation();
aModKeyState.InitInputEvent(aKeyEvent);
}
bool
@@ -1065,17 +1061,16 @@ NativeKey::RemoveFollowingCharMessage()
if (mIsFakeCharMsg) {
return mCharMsg;
}
MSG msg;
if (!WinUtils::GetMessage(&msg, mMsg.hwnd,
mCharMsg.message, mCharMsg.message)) {
MOZ_CRASH("We lost the following char message");
- return mCharMsg;
}
MOZ_ASSERT(mCharMsg.message == msg.message &&
mCharMsg.wParam == msg.wParam &&
mCharMsg.lParam == msg.lParam);
return mCharMsg;
}
--- a/widget/windows/nsTextStore.cpp
+++ b/widget/windows/nsTextStore.cpp
@@ -1020,17 +1020,16 @@ nsTextStore::FlushPendingActions()
static_cast<uint32_t>(action.mSelectionStart);
selectionSet.mLength =
static_cast<uint32_t>(action.mSelectionLength);
selectionSet.mReversed = action.mSelectionReversed;
break;
}
default:
MOZ_CRASH("unexpected action type");
- break;
}
if (mWidget && !mWidget->Destroyed()) {
continue;
}
mComposition.EnsureLayoutChangeTimerStopped();
--- a/widget/xpwidgets/WidgetUtils.cpp
+++ b/widget/xpwidgets/WidgetUtils.cpp
@@ -26,14 +26,13 @@ ComputeTransformForRotation(const nsIntR
transform.Rotate(M_PI);
break;
case ROTATION_270:
transform.Translate(gfxPoint(0, aBounds.height));
transform.Rotate(M_PI * 3 / 2);
break;
default:
MOZ_CRASH("Unknown rotation");
- break;
}
return transform;
}
} // namespace mozilla
--- a/xpcom/ds/nsAtomTable.cpp
+++ b/xpcom/ds/nsAtomTable.cpp
@@ -479,17 +479,16 @@ NS_SizeOfAtomTablesIncludingThis(MallocS
}
#define ATOM_HASHTABLE_INITIAL_SIZE 4096
static void HandleOOM()
{
fputs("Out of memory allocating atom hashtable.\n", stderr);
MOZ_CRASH();
- MOZ_CRASH();
}
static inline void
EnsureTableExists()
{
if (!gAtomTable.ops &&
!PL_DHashTableInit(&gAtomTable, &AtomTableOps, 0,
sizeof(AtomTableEntry), ATOM_HASHTABLE_INITIAL_SIZE)) {
--- a/xpcom/glue/nsISupportsImpl.h
+++ b/xpcom/glue/nsISupportsImpl.h
@@ -62,17 +62,17 @@ private:
#define NS_DECL_OWNINGTHREAD nsAutoOwningThread _mOwningThread;
#define NS_ASSERT_OWNINGTHREAD(_class) \
NS_CheckThreadSafe(_mOwningThread.GetThread(), #_class " not thread-safe")
#define NS_ASSERT_OWNINGTHREAD_AND_NOT_CCTHREAD(_class) \
do { \
if (NS_IsCycleCollectorThread()) { \
MOZ_CRASH("Changing refcount of " #_class " object during Traverse is " \
- "not permitted!"); \
+ "not permitted!"); \
} \
else { \
NS_ASSERT_OWNINGTHREAD(_class); \
} \
} while (0)
#else // !DEBUG
--- a/xpcom/glue/nsTArray.h
+++ b/xpcom/glue/nsTArray.h
@@ -260,17 +260,16 @@ struct nsTArrayInfallibleAllocator : nsT
static void SizeTooBig() {
HandleOOM();
}
private:
static void HandleOOM() {
fputs("Out of memory allocating nsTArray buffer.\n", stderr);
MOZ_CRASH();
- MOZ_CRASH();
}
};
#endif
// nsTArray_base stores elements into the space allocated beyond
// sizeof(*this). This is done to minimize the size of the nsTArray
// object when it is empty.