Reviewers: fschneider,

http://codereview.chromium.org/8117001/diff/1/src/frames.h
File src/frames.h (right):

http://codereview.chromium.org/8117001/diff/1/src/frames.h#newcode109
src/frames.h:109: inline bool is_entry() const;
Removing isolate-inl.h from v8.h revealed a circularity.

There is a circularity between frames.h and frames-inl.h.  This file,
frames.h, has function definitions that require inline function
definitions found in frames-inl.h.  This prevents frames.h from ever
being included by itself.

The circularity was hidden, because v8.h included isolate-inl.h, which
included debug.h, which included frames-inl.h, which included frames.h.
So everyplace that includes frames.h was already getting frames-inl.h
indirectly through v8.h.

The problem is solved here by moving some of these definitions to the
-inl file, rather than changing #include "frames.h" to frames-inl.h
everywhere.  I'm not sure if there is a genuine circularity, and if the
-inl.h file is needed at all.  I'll investigate that for a later change.

http://codereview.chromium.org/8117001/diff/1/src/jsregexp.h
File src/jsregexp.h (right):

http://codereview.chromium.org/8117001/diff/1/src/jsregexp.h#newcode32
src/jsregexp.h:32: #include "assembler.h"
This file was getting assembler.h indirectly through something included
by isolate-inl.h (probably debug.h), which was included by v8.h.

It was also getting it implicitly, since this file itself doesn't
include v8.h and relies on it getting included before jsregexp.h
everywhere.

Now it's direct and explicit.

Description:
Remove #include "isolate-inl.h" from v8.h.

Include it only in the .cc files where it's needed.

[email protected]
BUG=
TEST=


Please review this at http://codereview.chromium.org/8117001/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/bootstrapper.cc
  M src/code-stubs.h
  M src/code-stubs.cc
  M src/compiler.cc
  M src/debug.h
  M src/debug.cc
  M src/execution.cc
  M src/frames-inl.h
  M src/frames.h
  M src/frames.cc
  M src/isolate-inl.h
  M src/isolate.h
  M src/jsregexp.h
  M src/runtime-profiler.cc
  M src/runtime.cc
  M src/v8.h


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to