summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/TranslationUnit.h
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@nokia.com>2009-07-27 21:47:03 +0200
committerThiago Macieira <thiago.macieira@nokia.com>2009-08-03 14:59:42 +0200
commitd0457b70e33f1a090a91b0037e9254a0e14b8427 (patch)
tree2984b2db2129ba8cfefeac46d246a4a335b92150 /src/shared/cplusplus/TranslationUnit.h
parent88549a4b1dbbb16c7d63f176fd870ec8bdb61477 (diff)
downloadqt-creator-d0457b70e33f1a090a91b0037e9254a0e14b8427.tar.gz
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.
Diffstat (limited to 'src/shared/cplusplus/TranslationUnit.h')
-rw-r--r--src/shared/cplusplus/TranslationUnit.h19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/shared/cplusplus/TranslationUnit.h b/src/shared/cplusplus/TranslationUnit.h
index 35f79480f0..112d142acb 100644
--- a/src/shared/cplusplus/TranslationUnit.h
+++ b/src/shared/cplusplus/TranslationUnit.h
@@ -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;
};
};