<?xml version="1.0" encoding="utf-8"?>
<module>
   
  <source path="">
     
    <!-- Hack to keep collect from hiding collect.testing supersource: -->
     
    <exclude name="**/testing/**"/>
     
  </source>
    
  <!-- We used to set this only for packages that had manual supersource. That worked everywhere that I know of except for one place: when running the GWT util.concurrent tests under Guava. The problem is that GWT responds poorly to two .gwt.xml files in the same Java package: https://goo.gl/pRV3Yn The summary is that it ignores one file in favor of the other. util.concurrent, like nearly all our packages, has two .gwt.xml files: one for prod and one for tests. util.concurrent, unlike our other packages, has, as of this writing, test supersource but no prod supersource. GWT happens to use the prod .gwt.xml, so it looks for no supersource for tests, either. This causes it to fail to find AtomicLongMapTest. Our workaround is to tell GWT that util.concurrent and all other packages have prod supersource, even if they have none. GWT is happy to ignore us when we specify a nonexistent path. (I hope that this workaround does not cause its own problems in the future.) -->
   
  <super-source path="super"/>
   
  <inherits name="com.google.gwt.user.User"/>
    
  <inherits name="com.google.gwt.user.User"/>
   
  <inherits name="com.google.common.annotations.Annotations"/>
   
  <inherits name="com.google.common.base.Base"/>
   
  <inherits name="com.google.common.math.Math"/>
   
  <inherits name="com.google.common.primitives.Primitives"/>
      
  <inherits name="com.google.gwt.core.Core"/>
   
</module>
