Index: boost/statechart/state_machine.hpp
===================================================================
--- boost/statechart/state_machine.hpp	(revision 50920)
+++ boost/statechart/state_machine.hpp	(working copy)
@@ -549,9 +549,9 @@
         add_impl( pState, *pState );
 
       if ( isInnermostCommonOuter_ ||
-        is_in_highest_orthogonal_region< State >() &&
+        ( is_in_highest_orthogonal_region< State >() &&
         ( get_pointer( pOutermostUnstableState_ ) ==
-          pState->State::outer_state_ptr() ) )
+          pState->State::outer_state_ptr() ) ) )
       {
         isInnermostCommonOuter_ = false;
         pOutermostUnstableState_ = pNewOutermostUnstableStateCandidate;
Index: libs/statechart/test/FifoSchedulerTest.cpp
===================================================================
--- libs/statechart/test/FifoSchedulerTest.cpp	(revision 50920)
+++ libs/statechart/test/FifoSchedulerTest.cpp	(working copy)
@@ -6,6 +6,8 @@
 
 
 
+#include <boost/test/test_tools.hpp>
+
 #include <boost/statechart/asynchronous_state_machine.hpp>
 #include <boost/statechart/fifo_scheduler.hpp>
 #include <boost/statechart/event.hpp>
@@ -18,8 +20,6 @@
 #include <boost/bind.hpp>
 #include <boost/ref.hpp>
 
-#include <boost/test/test_tools.hpp>
-
 #include <stdexcept>
 

