tools/gcmole/gcmole-test.cc:30:10: warning: Possibly stale variable due to GCs.
  return obj;
         ^
tools/gcmole/gcmole-test.cc:28:20: note: Call might cause unexpected GC.
  isolate->heap()->CollectGarbage(OLD_SPACE, GarbageCollectionReason::kTesting);
                   ^
./src/heap/heap.h:<number>:<number>: note: GC call here.
  V8_EXPORT_PRIVATE void CollectGarbage(
                    ^
tools/gcmole/gcmole-test.cc:48:3: warning: Possible problem with evaluation order with interleaved GCs.
  TwoArgumentsFunction(*CauseGC(obj1, isolate), *CauseGC(obj2, isolate));
  ^
tools/gcmole/gcmole-test.cc:48:25: note: Call might cause unexpected GC.
  TwoArgumentsFunction(*CauseGC(obj1, isolate), *CauseGC(obj2, isolate));
                        ^
tools/gcmole/gcmole-test.cc:21:1: note: GC call here.
Handle<Object> CauseGC(Handle<Object> obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:60:3: warning: Possible problem with evaluation order with interleaved GCs.
  TwoSizeTArgumentsFunction(sizeof(*CauseGC(obj1, isolate)),
  ^
tools/gcmole/gcmole-test.cc:60:37: note: Call might cause unexpected GC.
  TwoSizeTArgumentsFunction(sizeof(*CauseGC(obj1, isolate)),
                                    ^
tools/gcmole/gcmole-test.cc:21:1: note: GC call here.
Handle<Object> CauseGC(Handle<Object> obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:85:7: warning: Possible problem with evaluation order with interleaved GCs.
  so->Method(*CauseGC(obj1, isolate));
      ^
tools/gcmole/gcmole-test.cc:85:15: note: Call might cause unexpected GC.
  so->Method(*CauseGC(obj1, isolate));
              ^
tools/gcmole/gcmole-test.cc:21:1: note: GC call here.
Handle<Object> CauseGC(Handle<Object> obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:87:7: warning: Possible problem with evaluation order with interleaved GCs.
  so->Method(CauseGCRaw(*obj1, isolate));
      ^
tools/gcmole/gcmole-test.cc:85:15: note: Call might cause unexpected GC.
  so->Method(*CauseGC(obj1, isolate));
              ^
tools/gcmole/gcmole-test.cc:21:1: note: GC call here.
Handle<Object> CauseGC(Handle<Object> obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:131:14: warning: Possible problem with evaluation order with interleaved GCs.
  so_handle->Method(*derived.VirtualCauseGC(obj1, isolate));
             ^
tools/gcmole/gcmole-test.cc:131:30: note: Call might cause unexpected GC.
  so_handle->Method(*derived.VirtualCauseGC(obj1, isolate));
                             ^
tools/gcmole/gcmole-test.cc:115:3: note: GC call here.
  Handle<Object> VirtualCauseGC(Handle<Object> obj, Isolate* isolate) override {
  ^
tools/gcmole/gcmole-test.cc:133:14: warning: Possible problem with evaluation order with interleaved GCs.
  so_handle->Method(*base->VirtualCauseGC(obj1, isolate));
             ^
tools/gcmole/gcmole-test.cc:131:30: note: Call might cause unexpected GC.
  so_handle->Method(*derived.VirtualCauseGC(obj1, isolate));
                             ^
tools/gcmole/gcmole-test.cc:115:3: note: GC call here.
  Handle<Object> VirtualCauseGC(Handle<Object> obj, Isolate* isolate) override {
  ^
tools/gcmole/gcmole-test.cc:154:14: warning: Possible problem with evaluation order with interleaved GCs.
  so_handle->Method(*SomeClass::StaticCauseGC(obj1, isolate));
             ^
tools/gcmole/gcmole-test.cc:154:22: note: Call might cause unexpected GC.
  so_handle->Method(*SomeClass::StaticCauseGC(obj1, isolate));
                     ^
tools/gcmole/gcmole-test.cc:140:3: note: GC call here.
  static Handle<Object> StaticCauseGC(Handle<Object> obj, Isolate* isolate) {
  ^
tools/gcmole/gcmole-test.cc:164:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:161:3: note: Call might cause unexpected GC.
  CauseGCRaw(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:27:1: note: GC call here.
Object CauseGCRaw(Object obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:172:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:169:3: note: Call might cause unexpected GC.
  Safepoint();
  ^
tools/gcmole/gcmole-test.cc:19:1: note: GC call here.
void Safepoint() { LocalHeap::Current()->Safepoint(); }
^
tools/gcmole/gcmole-test.cc:198:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:195:3: note: Call might cause unexpected GC.
  CauseGCRaw(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:27:1: note: GC call here.
Object CauseGCRaw(Object obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:224:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:221:3: note: Call might cause unexpected GC.
  Safepoint();
  ^
tools/gcmole/gcmole-test.cc:19:1: note: GC call here.
void Safepoint() { LocalHeap::Current()->Safepoint(); }
^
tools/gcmole/gcmole-test.cc:235:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:233:3: note: Call might cause unexpected GC.
  Safepoint();
  ^
tools/gcmole/gcmole-test.cc:19:1: note: GC call here.
void Safepoint() { LocalHeap::Current()->Safepoint(); }
^
tools/gcmole/gcmole-test.cc:242:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:233:3: note: Call might cause unexpected GC.
  Safepoint();
  ^
tools/gcmole/gcmole-test.cc:19:1: note: GC call here.
void Safepoint() { LocalHeap::Current()->Safepoint(); }
^
tools/gcmole/gcmole-test.cc:252:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:250:3: note: Call might cause unexpected GC.
  CauseGCRaw(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:27:1: note: GC call here.
Object CauseGCRaw(Object obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:262:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:260:3: note: Call might cause unexpected GC.
  CauseGCRaw(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:27:1: note: GC call here.
Object CauseGCRaw(Object obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:265:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:260:3: note: Call might cause unexpected GC.
  CauseGCRaw(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:27:1: note: GC call here.
Object CauseGCRaw(Object obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:271:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:269:3: note: Call might cause unexpected GC.
  CauseGCRaw(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:27:1: note: GC call here.
Object CauseGCRaw(Object obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:287:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:285:3: note: Call might cause unexpected GC.
  TestGuardedDeadVarAnalysisNested(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:268:1: note: GC call here.
void TestGuardedDeadVarAnalysisNested(JSObject raw_obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:295:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:293:3: note: Call might cause unexpected GC.
  TestGuardedDeadVarAnalysisNested(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:268:1: note: GC call here.
void TestGuardedDeadVarAnalysisNested(JSObject raw_obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:302:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:300:3: note: Call might cause unexpected GC.
  TestGuardedDeadVarAnalysisNested(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:268:1: note: GC call here.
void TestGuardedDeadVarAnalysisNested(JSObject raw_obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:319:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:317:3: note: Call might cause unexpected GC.
  CauseGCRaw(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:27:1: note: GC call here.
Object CauseGCRaw(Object obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:338:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:334:3: note: Call might cause unexpected GC.
  CauseGCRaw(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:27:1: note: GC call here.
Object CauseGCRaw(Object obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:349:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:345:3: note: Call might cause unexpected GC.
  CauseGCRaw(raw_obj, isolate);
  ^
tools/gcmole/gcmole-test.cc:27:1: note: GC call here.
Object CauseGCRaw(Object obj, Isolate* isolate) {
^
tools/gcmole/gcmole-test.cc:359:3: warning: Possibly stale variable due to GCs.
  raw_obj.Print();
  ^
tools/gcmole/gcmole-test.cc:355:3: note: Call might cause unexpected GC.
  Safepoint();
  ^
tools/gcmole/gcmole-test.cc:19:1: note: GC call here.
void Safepoint() { LocalHeap::Current()->Safepoint(); }
^
25 warnings generated.
