compilation failure using gcc 4.7.2 (original) (raw)
David Holmes david.holmes at oracle.com
Sun Nov 4 14:28:22 PST 2012
- Previous message: compilation failure using gcc 4.7.2
- Next message: compilation failure using gcc 4.7.2
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi Peter,
I think we have lost some changes through the NPG integration. This code was updated by Mikael Gerdin under:
7172226: HotSpot fails to build with GCC 4.7 because of stricter c++ argument dependent lookup
but the NPG changes by Jon under
7045397: NPG: Add freelists to class loader arenas
http://hg.openjdk.java.net/jdk8/jdk8/hotspot/rev/685df3c6f84b
seems to have undone those changes in part.
The preferred fix was to add "using" directives rather than writing fully-qualified names.
David
On 5/11/2012 7:09 AM, Peter Levart wrote:
Hi,
Current head of jdk8/hotspot repository (3790:4d37eb50b9b1) can not be built with gcc 4.7.2. I had to make the following changes to compile with gcc 4.7.2 (on linux):
diff -r 4d37eb50b9b1 src/share/vm/memory/binaryTreeDictionary.cpp --- a/src/share/vm/memory/binaryTreeDictionary.cpp Thu Nov 01 14:11:16 2012 -0700 +++ b/src/share/vm/memory/binaryTreeDictionary.cpp Sun Nov 04 22:07:29 2012 +0100 @@ -239,7 +239,7 @@ } else { if (nextTC == NULL) { // Removing chunk at tail of list - linktail(prevFC); + this->linktail(prevFC); } // Chunk is interior to the list prevFC->linkafter(nextTC); @@ -296,7 +296,7 @@ Chunkt* fc = tail(); fc->linkafter(chunk); - linktail(chunk); + this->linktail(chunk); assert(!tail() || size() == tail()->size(), "Wrong sized chunk in list"); FreeListt::incrementcount(); @@ -323,7 +323,7 @@ chunk->linkafter(fc); } else { assert(tail() == NULL, "List is inconsistent"); - linktail(chunk); + this->linktail(chunk); } head()->linkafter(chunk); assert(!head() || size() == head()->size(), "Wrong sized chunk in list"); @@ -940,7 +940,7 @@ void dotree(TreeList<Chunkt, FreeListt>* tl) { if (tl != NULL) { dotree(tl->left()); - dolist(tl); + this->dolist(tl); dotree(tl->right()); } } @@ -952,7 +952,7 @@ void dotree(TreeList<Chunkt, FreeListt>* tl) { if (tl != NULL) { dotree(tl->right()); - dolist(tl); + this->dolist(tl); dotree(tl->left()); } } @@ -1008,7 +1008,7 @@ bool dotree(TreeList<Chunkt, FreeListt>* tl) { if (tl != NULL) { if (dotree(tl->left())) return true; - if (dolist(tl)) return true; + if (this->dolist(tl)) return true; if (dotree(tl->right())) return true; } return false; @@ -1022,7 +1022,7 @@ bool dotree(TreeList<Chunkt, FreeListt>* tl) { if (tl != NULL) { if (dotree(tl->right())) return true; - if (dolist(tl)) return true; + if (this->dolist(tl)) return true; if (dotree(tl->left())) return true; } return false;
Regards, Peter
- Previous message: compilation failure using gcc 4.7.2
- Next message: compilation failure using gcc 4.7.2
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]