Compile the C++ parser library with Sun CC 5.9.

Things you mustn't do:
1) end an enum with a comma

2) #include <cxxxx> and not use std::

3) use anonymous structures

All three things are invalid C++. Anonymous structures inside
anonymous unions are allowed by GCC, but that doesn't mean it's valid.
This commit is contained in:
Thiago Macieira
2009-07-27 21:47:03 +02:00
parent 88549a4b1d
commit d0457b70e3
24 changed files with 321 additions and 306 deletions

View File

@@ -53,7 +53,7 @@
#include "ASTfwd.h"
#include "Token.h"
#include "Array.h"
#include <cstdio>
#include <stdio.h> // for FILE*
#include <vector> // ### remove me
CPLUSPLUS_BEGIN_HEADER
@@ -190,16 +190,17 @@ private:
MemoryPool *_pool;
AST *_ast;
TranslationUnit *_previousTranslationUnit;
struct Flags {
unsigned _tokenized: 1;
unsigned _parsed: 1;
unsigned _blockErrors: 1;
unsigned _skipFunctionBody: 1;
unsigned _qtMocRunEnabled: 1;
unsigned _objCEnabled: 1;
};
union {
unsigned _flags;
struct {
unsigned _tokenized: 1;
unsigned _parsed: 1;
unsigned _blockErrors: 1;
unsigned _skipFunctionBody: 1;
unsigned _qtMocRunEnabled: 1;
unsigned _objCEnabled: 1;
};
Flags f;
};
};