Commit Graph

12 Commits

Author SHA1 Message Date
Douglas Gregor 9c9f26d4bf New language-compatibility page, including language-compatibility information for the various language dialects Clang supports in a single, easy-to-find page
llvm-svn: 107325
2010-06-30 22:01:08 +00:00
John McCall be829868e1 Rework the unqualified-lookup-in-templates section of the compatibility
document.  jyasskin, let me know if this meets your needs.

llvm-svn: 106098
2010-06-16 10:48:16 +00:00
John McCall 89d57ae436 Some more nods to HTML well-formedness.
llvm-svn: 106094
2010-06-16 08:48:08 +00:00
Jeffrey Yasskin babff2ce56 Fix template ordering compatibility docs. I missed another section that covered
the same thing.

llvm-svn: 106076
2010-06-16 01:12:12 +00:00
Jeffrey Yasskin 0952ea77ee Describe a gcc compatibility problem that occurs when a template calls a
function defined between its declaration and an instantiation, and that
function isn't findable through ADL.

llvm-svn: 106068
2010-06-15 23:50:08 +00:00
John McCall 58ec0483b7 Add a compatibility note about incomplete types in templates.
llvm-svn: 105309
2010-06-02 01:26:32 +00:00
Douglas Gregor a09387df9f It turns out that people love using VLAs in templates, too. Weaken our
VLA restrictions so that one can use VLAs in templates (even
accidentally), but not as part of a non-type template parameter (which
would be very bad).

llvm-svn: 104471
2010-05-23 19:57:01 +00:00
Douglas Gregor 959d5a0cbd Implement support for variable length arrays in C++. VLAs are limited
in several important ways:

  - VLAs of non-POD types are not permitted.
  - VLAs cannot be used in conjunction with C++ templates.

These restrictions are intended to keep VLAs out of the parts of the
C++ type system where they cause the most trouble. Fixes PR5678 and
<rdar://problem/8013618>.

llvm-svn: 104443
2010-05-22 16:17:30 +00:00
John McCall 81a4a72e84 Add a note to the C++ compatibility page about templates with no
valid instantiations.

llvm-svn: 100836
2010-04-09 01:07:07 +00:00
John McCall cb81625851 Add another compatibility note and tweak a few of the existing ones.
llvm-svn: 98717
2010-03-17 07:10:56 +00:00
Chandler Carruth 7b621ea10a Fix a typo in a tag.
llvm-svn: 98713
2010-03-17 05:46:21 +00:00
Rafael Espindola fcc4739089 Document common clang compatibility issues.
Patch by Zhanyong Wan.

llvm-svn: 98708
2010-03-17 04:31:53 +00:00