title: Is any part of C++ syntax context sensitive?
body: <blockquote>
    <p><strong>Possible Duplicate:</strong><br>
    <a href="https://stackoverflow.com/questions/14589346/is-c-context-free-or-context-sensitive">Is C++ context-free or context-sensitive?</a>  </p>
  </blockquote>
  
  
  
  <p>This is probably a silly question to people knowledgeable about compilers, but I'm honestly ignorant about the answer. </p>
  
  <p>Is C++ syntax context-sensitive? In other words, is C++ syntax not expressible with context-free grammars? </p>
  
  <p>Obviously C++ <em>is</em> parsed with regular parsing tools and that parsing is not particularly ineffective (!), but I do recall reading something about this (I don't remember where) and I thought I'd get my facts straight with the community before spreading lies... Maybe a subset of C++ is CS? Maybe the new spec? Any help is appreciated.</p>
  
  <p><strong>EDIT</strong>: Thanks for all the responses. However, for completeness' sake, what part of compilation deals with the ambiguity? A CFG is a grammar that has only one non-terminal symbol on the left-hand-side of the rule (eg. <code>A-&gt;zC</code>), a CSG is one that has a terminal (plus a non-terminal) on the left-hand-side (<code>aAv-&gt;QT</code>), where uppercase letters are nonterminals and lowercase are terminals. Is any representation like the latter in the grammar <strong>parsing</strong> C++ source code?</p>