[EDG 4.4 and C11] Fixed secondary declarations with nested type declarations (added new C test code).
[EDG 4.4 and C11] Fixed union declarations defined within designated initializers (added new C test codes).
(EDG 4x) Fixed multiple bugs in getEnclosingNode

Both Leo and I had fixed bugs in this function in the
last couple days, which has been modified numerous times
in the past.  I felt it was time to rewrite and simplify
it.  The changes are:

1. Removed comment turds that are replicated by Git
   history.

2. Removed commented out debugging code that served only
   to make the core logic hard to see.

3. Fixed an inverted boolean condition that caused the
   traversal to only occur if a cycle was detected.

4. Removed cut-n-pasted code dealing with SgDeclarationStatement
   that made the logic harder to see.

5. Fixed the algorithm for detecting cycles: it only detected
   cycles that included the starting node and therefore didn't
   fix the infinite recursion problem that it advertised to
   fix. I also made it so the full cycle-detection doesn't
   need to run on every call.

6. In the case of SgDeclarationStatement, the original
   logic did two different things depending on whether
   the declaration was the first or greater ancestor
   of the starting node.  For greater ancestors, the
   first defining declaration of the node in question
   was omitted from consideration.

7. If an SgDeclaration had a defining definition but
   not a non-defining definition then the function would
   try to dereference a null pointer  (null->get_parent()).

8. If the includingSelf argument was set, the function only
   returned successfully if the specified node itself was
   the desired type, but not if the specified node had
   an ancestor of the specified type.
(RoseGit) Adjusted configure switches for work on merging edg 4.4
(Ast Query Tests) Less sensitive to GCC version

The testQuery.C was written to be used against a single, hand
crafted specimen, but it actually depended also on the list of
built-in functions.  Therefore, the expected answer varied
across different versions of native compiler and libraries.

I changed this test so rather than looking for a specific number
of function declarations, it checks that the query does in
fact return a list of unique function declarations and that
the lists returned by various queries are consistent with
one another.  This also makes the test suitable for running
against more than just the one specimen (so we can eventually
test multiple input languages if we want).

I also removed the backend() call since that functionality
is presumably tested elswhere.
(Ast Post Processing) Fix problems with frontend-specific and compiler-generated

These two checkers/fixers make sure that frontend-specific nodes
and compiler-generated nodes are marked appropriately.

* Any node that comes from rose_edg_required_macros_and_functions.h
  is marked as frontend-specific.

* Any node that is a descendent of a frontend-specific node is itself
  frontend-specific.

* Any node that is frontend-specific is also compiler generated.

* Any node that violates these rules causes a warning (per Dan) and
  is fixed.

These are the rules previously used by EDG 3.x

Conflicts:

	src/frontend/SageIII/astPostProcessing/astPostProcessing.C
[EDG 4.4 and C11] Fixed more complex union declarations defined within designated initializers (added new C and C++ test codes).
[EDG 4.4 and C11] Fixed class declaration in sizeof operator (added new C test code).
[EDG 4.4 and C11] Fixed conflict (but Robb and I need to discuss this).
[EDG 4.4 and C11] Fixed more C specific bugs.
[EDG 4.4 and C11] Added more test codes.
[EDG 4.4 and C11] Fixed details of class/struct/union defining (primary) declarations nested in variable/field and typedef declarations (added more C and C++ tests codes).
(EDG4x) Fix null pointer dereference

The test's main() gets a null pointer from
AbstractMemoryObject::PointerNamedObj::getDereference() because
AbstractMemoryObject::createAliasedObjSet() is not fully implemented.

My fix is to just check for the null pointer in main() since the
only thing it's used for is to print a message to std::cout.

This commit does not fix the fact that createAliasedObjSet() is
not fully implemented.
(EDG4x) Removed an assertion for null scope

This assert was added by Dan in commit 138cf1c on 2012-09-05, but
doesn't make much sense since the function is declared to be able to
take a default null argument for the scope.

I removed the assertion.
(Lexer) Fixed bug when doing lexical analysis for C strings

An extraneous rule for double-quote prevented the lexer from
entering the STRING_LIT state.  If the string contained what
looked like the start of a C comment, the lexer inappropriately
entered the C_COMMENT state.

This commit removes the extraneous double-quote rule.  It also
removes string-related commentary that is no longer applicable.
[EDG 4.4 and C11] Fixed details of designated initializers being output in generated code (explicit or implicit in original code) (added more C tests codes).
[EDG 4.4 and C11] Fixed source position of parameters of function prototypes to be compiler generated instead of using the position of the defining function's parameters (fixes last bug in grep-2.14) (added another C test code).
Merge remote branch 'origin/master' into HEAD
Merge remote branch 'origin/master' into HEAD
[EDG 4.4 and C11] Fixed output of struct definitions for un-named structs (fixes last bug in wget-1.14) (added more C test codes).