title: Shadows built-in names "function" and "module" with PyCharm
body: <p>I have the following Python code:</p>
  
  <pre><code>function = "Developer"
  module = "something"
  print(function + " on " + module)
  </code></pre>
  
  <p>With PyCharm 2017, I have a bubble which says “Shadows built-in names "function"/"module" with PyCharm”.</p>
  
  <p>I’m surprised because "function" and "module" are not built-in names. They are not keywords either:</p>
  
  <pre><code>import __builtin__
  import keyword
  
  assert "function" not in dir(__builtin__)  # -&gt; OK
  assert "module" not in dir(__builtin__)    # -&gt; OK
  assert "function" not in keyword.kwlist    # -&gt; OK
  assert "module" not in keyword.kwlist      # -&gt; OK
  </code></pre>
  
  <p>What’s wrong?</p>
  
  <p>I’m using CPython 2.7, but have the same trouble with 3.5 &amp; 3.6.</p>
  
  <p><strong>EDIT:</strong></p>
  
  <p><code>__builtin__</code> is now <code>builtins</code> in Python 3.</p>