Pages that need work have an incomplete tag.
Pages that need to be deleted have a deleteme tag.
Pages that have problems with the citations at the bottom have the citations-incomplete tag.
Pages with comments that might make good sidebars are tagged as sidebar


review -> review + review-one -> review + review-two -> No tags
significant changes -> review or incomplete


1. Reorganize C++ section to be consistent with C standard.
2. Suffix convention (all C rules end in -C, Java in -J, and C++ in CPP.
3. Start adding "Other Languages" section that references similar / corresponding rules in other languages.


There is some inconsistency with the use of const. We used to have a recommendation that declarations appear like this:

int const *ip;

But we eventually got rid of it. Most of our declarations are of this form, but some are of this form:

const int *ip;

The argument we had was that the first form is less prone to error, but the second form is widely used, and not something that people will change.

Our choices are a) apply the first style consistently, b) apply the second style consistently, c) allow a mix of both styles.

Whatever style we adopt should also apply to other qualified type declarations, like volatile.

The bot changes all of these to have rightmost const. There are very few (if any, it would only be what was added recently) the other way. -jp


Run spider with new changes.


C++ has it's own TODO List


Incomplete pages in Java use their own incomplete-java tag.


Pages now have tags to indicate the status of their corresponding checker in Compass Rose:

Tag

Meaning

rose-complete

ROSE catches all violations

rose-partial

ROSE catches some violations

rose-possible

ROSE could catch some or all violations, but doesn't yet.

rose-gcc

ROSE doesn't catch violations, but will soon, GCC catches violations

unenforceable

These rules can't be checked automatically.

rose-na

These rules could be checked automatically in theory, but not by ROSE.

rose-na-macros

ROSE could check these rules if it recognized macro usage.

rose-na-exptypes

ROSE could check these rules if it recognized derived types in expressions, such as size_t.


It might also be worth giving these another look.