mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 886128 - Fix various clang warnings and some potential bugs in nonstandard configurations. r=nnethercote,terrence.
--HG-- extra : rebase_source : 0d833ecc9879f5d9fd0a28f9b4eca7793d01aa40
This commit is contained in:
parent
694f519ab3
commit
ea1eb05d97
@ -21,6 +21,10 @@
|
||||
|
||||
#include "jscntxtinlines.h"
|
||||
|
||||
#ifdef JSGC_GENERATIONAL
|
||||
#include "vm/Shape-inl.h"
|
||||
#endif
|
||||
|
||||
using namespace js;
|
||||
|
||||
using mozilla::ArrayLength;
|
||||
|
@ -12,7 +12,7 @@ struct JSContext;
|
||||
namespace js {
|
||||
namespace frontend {
|
||||
|
||||
struct ParseNode;
|
||||
class ParseNode;
|
||||
|
||||
bool
|
||||
NameFunctions(JSContext *cx, ParseNode *pn);
|
||||
|
@ -416,9 +416,8 @@ class ConditionalExpression;
|
||||
class PropertyAccess;
|
||||
class ModuleBox;
|
||||
|
||||
struct ParseNode
|
||||
class ParseNode
|
||||
{
|
||||
private:
|
||||
uint32_t pn_type : 16, /* PNK_* type */
|
||||
pn_op : 8, /* see JSOp enum and jsopcode.tbl */
|
||||
pn_arity : 5, /* see ParseNodeArity enum */
|
||||
|
@ -258,8 +258,9 @@ enum VarContext { HoistVars, DontHoistVars };
|
||||
enum FunctionType { Getter, Setter, Normal };
|
||||
|
||||
template <typename ParseHandler>
|
||||
struct Parser : private AutoGCRooter, public StrictModeGetter
|
||||
class Parser : private AutoGCRooter, public StrictModeGetter
|
||||
{
|
||||
public:
|
||||
JSContext *const context; /* FIXME Bug 551291: use AutoGCRooter::context? */
|
||||
TokenStream tokenStream;
|
||||
LifoAlloc::Mark tempPoolMark;
|
||||
|
@ -22,7 +22,7 @@ namespace gc {
|
||||
*/
|
||||
class RelocationOverlay
|
||||
{
|
||||
friend struct MinorCollectionTracer;
|
||||
friend class MinorCollectionTracer;
|
||||
|
||||
/* The low bit is set so this should never equal a normal pointer. */
|
||||
const static uintptr_t Relocated = uintptr_t(0xbad0bad1);
|
||||
|
@ -48,7 +48,7 @@ js::Nursery::init()
|
||||
// were marked as uncommitted, but it's a little complicated to avoid
|
||||
// clobbering pre-existing unrelated mappings.
|
||||
while (IsPoisonedPtr(heap) || IsPoisonedPtr((void*)(uintptr_t(heap) + NurserySize)))
|
||||
heap = MapAlignedPages(NurserySize, Alignment);
|
||||
heap = MapAlignedPages(runtime(), NurserySize, Alignment);
|
||||
#endif
|
||||
if (!heap)
|
||||
return false;
|
||||
@ -58,7 +58,9 @@ js::Nursery::init()
|
||||
rt->gcNurseryEnd_ = chunk(LastNurseryChunk).end();
|
||||
numActiveChunks_ = 1;
|
||||
setCurrentChunk(0);
|
||||
#ifdef DEBUG
|
||||
JS_POISON(heap, FreshNursery, NurserySize);
|
||||
#endif
|
||||
for (int i = 0; i < NumNurseryChunks; ++i)
|
||||
chunk(i).runtime = rt;
|
||||
|
||||
@ -108,7 +110,9 @@ js::Nursery::allocate(size_t size)
|
||||
void *thing = (void *)position();
|
||||
position_ = position() + size;
|
||||
|
||||
#ifdef DEBUG
|
||||
JS_POISON(thing, AllocatedThing, size);
|
||||
#endif
|
||||
return thing;
|
||||
}
|
||||
|
||||
|
@ -6,11 +6,13 @@
|
||||
|
||||
#ifdef JSGC_GENERATIONAL
|
||||
|
||||
#include "jsgc.h"
|
||||
#include "gc/StoreBuffer.h"
|
||||
|
||||
#include "mozilla/Assertions.h"
|
||||
|
||||
#include "vm/ForkJoin.h"
|
||||
|
||||
#include "gc/Barrier-inl.h"
|
||||
#include "gc/StoreBuffer.h"
|
||||
#include "vm/ForkJoin.h"
|
||||
#include "vm/ObjectImpl-inl.h"
|
||||
|
||||
using namespace js;
|
||||
@ -64,8 +66,12 @@ StoreBuffer::WholeCellEdges::mark(JSTracer *trc)
|
||||
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.");
|
||||
#endif
|
||||
}
|
||||
|
||||
/*** MonoTypeBuffer ***/
|
||||
|
@ -13,10 +13,12 @@
|
||||
# error "Generational GC requires exact rooting."
|
||||
#endif
|
||||
|
||||
#include "jsgc.h"
|
||||
#include "jsalloc.h"
|
||||
#include "jsgc.h"
|
||||
#include "jsobj.h"
|
||||
|
||||
#include "gc/Nursery.h"
|
||||
|
||||
namespace js {
|
||||
namespace gc {
|
||||
|
||||
|
@ -17,7 +17,7 @@ namespace js {
|
||||
class ScriptSource;
|
||||
class SPSProfiler;
|
||||
class AsmJSModule;
|
||||
namespace frontend { struct TokenStream; struct ParseNode; }
|
||||
namespace frontend { class TokenStream; class ParseNode; }
|
||||
namespace ion { class MIRGenerator; class LIRGraph; }
|
||||
|
||||
// Called after parsing a function 'fn' which contains the "use asm" directive.
|
||||
|
@ -24,7 +24,7 @@ namespace js {
|
||||
namespace ion {
|
||||
|
||||
class StackValue;
|
||||
struct ICEntry;
|
||||
class ICEntry;
|
||||
class ICStub;
|
||||
|
||||
class PCMappingSlotInfo
|
||||
|
@ -66,7 +66,7 @@ typedef Vector<IonBuilder*, 0, SystemAllocPolicy> OffThreadCompilationVector;
|
||||
// Optimized stubs are allocated per-compartment and are always purged when
|
||||
// JIT-code is discarded. Fallback stubs are allocated per BaselineScript and
|
||||
// are only destroyed when the BaselineScript is destroyed.
|
||||
struct ICStubSpace
|
||||
class ICStubSpace
|
||||
{
|
||||
protected:
|
||||
LifoAlloc allocator_;
|
||||
|
@ -8,6 +8,10 @@
|
||||
|
||||
#include "jscntxtinlines.h"
|
||||
|
||||
#ifdef JSGC_GENERATIONAL
|
||||
#include "vm/Shape-inl.h"
|
||||
#endif
|
||||
|
||||
using namespace js;
|
||||
|
||||
struct VersionFixture;
|
||||
|
@ -7,7 +7,7 @@
|
||||
/*
|
||||
* JS atom table.
|
||||
*/
|
||||
#include "jsatom.h"
|
||||
#include "jsatominlines.h"
|
||||
|
||||
#include "mozilla/RangedPtr.h"
|
||||
#include "mozilla/Util.h"
|
||||
@ -22,9 +22,11 @@
|
||||
#include "gc/Marking.h"
|
||||
#include "vm/Xdr.h"
|
||||
|
||||
#include "jsatominlines.h"
|
||||
#include "jscompartmentinlines.h"
|
||||
|
||||
#ifdef JSGC_GENERATIONAL
|
||||
#include "vm/Shape-inl.h"
|
||||
#endif
|
||||
#include "vm/String-inl.h"
|
||||
|
||||
using namespace js;
|
||||
|
@ -25,11 +25,11 @@
|
||||
#include "js/HashTable.h"
|
||||
#include "js/Vector.h"
|
||||
|
||||
struct JSAtom;
|
||||
class JSAtom;
|
||||
struct JSCompartment;
|
||||
struct JSFunction;
|
||||
struct JSFlatString;
|
||||
struct JSLinearString;
|
||||
class JSFunction;
|
||||
class JSFlatString;
|
||||
class JSLinearString;
|
||||
|
||||
namespace js {
|
||||
|
||||
@ -258,9 +258,8 @@ struct ArenaList {
|
||||
void insert(ArenaHeader *arena);
|
||||
};
|
||||
|
||||
struct ArenaLists
|
||||
class ArenaLists
|
||||
{
|
||||
private:
|
||||
/*
|
||||
* For each arena kind its free list is represented as the first span with
|
||||
* free things. Initially all the spans are initialized as empty. After we
|
||||
@ -684,7 +683,7 @@ class GCHelperThread {
|
||||
|
||||
bool backgroundAllocation;
|
||||
|
||||
friend struct js::gc::ArenaLists;
|
||||
friend class js::gc::ArenaLists;
|
||||
|
||||
void
|
||||
replenishAndFreeLater(void *ptr);
|
||||
|
@ -148,10 +148,10 @@ struct Token;
|
||||
struct TokenPos;
|
||||
class TokenStream;
|
||||
class ParseMapPool;
|
||||
struct ParseNode;
|
||||
class ParseNode;
|
||||
|
||||
template <typename ParseHandler>
|
||||
struct Parser;
|
||||
class Parser;
|
||||
|
||||
} /* namespace frontend */
|
||||
|
||||
|
@ -279,10 +279,9 @@ typedef HashMap<JSScript *,
|
||||
DefaultHasher<JSScript *>,
|
||||
SystemAllocPolicy> DebugScriptMap;
|
||||
|
||||
struct ScriptSource
|
||||
class ScriptSource
|
||||
{
|
||||
friend class SourceCompressorThread;
|
||||
private:
|
||||
union {
|
||||
// Before setSourceCopy or setSource are successfully called, this union
|
||||
// has a NULL pointer. When the script source is ready,
|
||||
@ -1328,7 +1327,7 @@ class SourceCompressorThread
|
||||
|
||||
struct SourceCompressionToken
|
||||
{
|
||||
friend struct ScriptSource;
|
||||
friend class ScriptSource;
|
||||
friend class SourceCompressorThread;
|
||||
private:
|
||||
JSContext *cx;
|
||||
|
@ -200,7 +200,7 @@
|
||||
|
||||
namespace js {
|
||||
|
||||
struct ForkJoinSlice;
|
||||
class ForkJoinSlice;
|
||||
|
||||
bool ForkJoin(JSContext *cx, CallArgs &args);
|
||||
|
||||
@ -290,7 +290,7 @@ struct ParallelBailoutRecord {
|
||||
|
||||
struct ForkJoinShared;
|
||||
|
||||
struct ForkJoinSlice : ThreadSafeContext
|
||||
class ForkJoinSlice : public ThreadSafeContext
|
||||
{
|
||||
public:
|
||||
// Which slice should you process? Ranges from 0 to |numSlices|.
|
||||
|
@ -4,7 +4,7 @@
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#include "vm/String.h"
|
||||
#include "vm/String-inl.h"
|
||||
|
||||
#include "mozilla/MemoryReporting.h"
|
||||
#include "mozilla/PodOperations.h"
|
||||
@ -14,7 +14,9 @@
|
||||
|
||||
#include "jscompartmentinlines.h"
|
||||
|
||||
#include "String-inl.h"
|
||||
#ifdef JSGC_GENERATIONAL
|
||||
#include "vm/Shape-inl.h"
|
||||
#endif
|
||||
|
||||
using namespace js;
|
||||
|
||||
|
@ -604,7 +604,7 @@ class CheckedInt
|
||||
"This type is not supported by CheckedInt");
|
||||
}
|
||||
|
||||
friend class detail::NegateImpl<T>;
|
||||
friend struct detail::NegateImpl<T>;
|
||||
|
||||
public:
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user