devwaker / angleproject

Automatically exported from code.google.com/p/angleproject
Other
0 stars 0 forks source link

ANGLE fails to build with trunk clang #463

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Build trunk clang.
2. Build ANGLE with trunk clang.

What is the expected output? What do you see instead?

Expected:  A successful build.

Actual:  Build failures like these:
glslang_lex.cpp:2033:2: error: 'register' storage class specifier is deprecated 
[-Werror,-Wdeprecated-register]
Tokenizer.cpp:788:2: error: 'register' storage class specifier is deprecated 
[-Werror,-Wdeprecated-register]

What version of the product are you using? On what operating system?

Source/ThirdParty/ANGLE from WebKit trunk.

Please provide any additional information below.

WebKit bug with a fix:  <https://bugs.webkit.org/show_bug.cgi?id=119931>

Original issue reported on code.google.com by ddkil...@apple.com on 17 Aug 2013 at 4:17

GoogleCodeExporter commented 9 years ago

Original comment by kbr@chromium.org on 21 Aug 2013 at 12:06

GoogleCodeExporter commented 9 years ago

Original comment by shannonw...@google.com on 27 Aug 2013 at 9:19

GoogleCodeExporter commented 9 years ago

Original comment by c...@chromium.org on 7 Dec 2013 at 4:02

GoogleCodeExporter commented 9 years ago
That fix seems reasonable to me.

Original comment by c...@chromium.org on 31 Jan 2014 at 9:48

GoogleCodeExporter commented 9 years ago
Chromium is now compiling ANGLE with clang on the waterfall.  Marking this as 
fixed.

Original comment by geofflang@chromium.org on 29 Apr 2015 at 7:38

GoogleCodeExporter commented 9 years ago
Hey Geoff,

I'm going to reopen this temporarily - I still see the register keyword in this 
file and don't see the warning disable. We should check to see if WebKit no 
longer needs a patch.

Original comment by jmad...@chromium.org on 29 Apr 2015 at 7:51

GoogleCodeExporter commented 9 years ago
Sure thing.

Original comment by geofflang@chromium.org on 29 Apr 2015 at 7:56

GoogleCodeExporter commented 9 years ago
The change we made to WebKit was indeed needed.  Is Chromium compiled with all 
the same warnings as WebKit (-Werror,-Wdeprecated-register) and does Chromium 
have a bot compiling it with trunk clang that it just compiled? I believe this 
was found using clang and llvm after what was used to make Xcode 6.  I think a 
change is still needed.

Original comment by achriste...@gmail.com on 30 Apr 2015 at 3:27

GoogleCodeExporter commented 9 years ago
Chrome enables deprecated-register for everything, possibly just for ANGLE (see 
Chrome's common.gypi). I think we should use a similar patch to what you made 
for WebKit above, and enable the warning in Chrome if we can. I'll take a look 
at this.

Original comment by jmad...@chromium.org on 30 Apr 2015 at 11:37

GoogleCodeExporter commented 9 years ago
achristensen: can you test with 
https://chromium-review.googlesource.com/#/c/268512/ ?

Original comment by jmad...@chromium.org on 30 Apr 2015 at 2:50

GoogleCodeExporter commented 9 years ago
You're missing similar changes for src/compiler/preprocessor/Tokenizer.{cpp,l}.

See the original WebKit patch here:  http://trac.webkit.org/changeset/154223

Original comment by ddkil...@apple.com on 30 Apr 2015 at 4:27

GoogleCodeExporter commented 9 years ago
I agree, #define register avoids the deprecation equally well.  Does ANGLE 
support any compilers where using the register keyword would make any 
difference?

Original comment by achriste...@gmail.com on 30 Apr 2015 at 5:45

GoogleCodeExporter commented 9 years ago
ddkilzer: thanks, PTAL at the CL 
https://chromium-review.googlesource.com/#/c/268512/ and let me know if it 
works for you guys.

I don't know of any compilers that we support where register would make a 
difference.

Original comment by jmad...@chromium.org on 30 Apr 2015 at 7:59

GoogleCodeExporter commented 9 years ago
Patch Set 2 looks good to me.  ANGLE compiles when that patch is applied to the 
WebKit tree with r154223 backed out.  Thanks!

Original comment by ddkil...@apple.com on 30 Apr 2015 at 9:50

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Jamie Madill <jmadill@chromium.org>
Commit : 2dc8bf8b2b960971d90a2a9bee0915024ef5015f

Code-Review  0 : Jamie Madill
Code-Review  +1: Geoff Lang
Code-Review  +2: Zhenyao Mo
Verified     0 : Geoff Lang, Zhenyao Mo
Verified     +1: Jamie Madill
Commit Queue   : Chumped
Change-Id      : Ied044fb87a9b05c91cb419c54295c39f0f0ab776
Reviewed-at    : https://chromium-review.googlesource.com/268512

translator: Fix C++11-deprecated register usage.

Define 'register' as an empty string if we're in a modern version
of C++.

BUG=255186
BUG=angleproject:463

src/compiler/preprocessor/Tokenizer.cpp
src/compiler/preprocessor/Tokenizer.l
src/compiler/translator/glslang.l
src/compiler/translator/glslang_lex.cpp

Original comment by bugdroid1@chromium.org on 1 May 2015 at 2:26

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Jamie Madill <jmadill@chromium.org>
Commit : b96687df34626202448d2a59d26153da1ac679f1

Code-Review  0 : Jamie Madill
Code-Review  +1: Zhenyao Mo
Code-Review  +2: Geoff Lang
Verified     0 : Geoff Lang, Zhenyao Mo
Verified     +1: Jamie Madill
Commit Queue   : Chumped
Change-Id      : If89a29de8fb006e8e3b0483ac5df21c8833ce974
Reviewed-at    : https://chromium-review.googlesource.com/268511

translator: Regenerate with Bison 3.0.4.

BUG=angleproject:463

src/compiler/preprocessor/ExpressionParser.cpp
src/compiler/preprocessor/Tokenizer.cpp
src/compiler/preprocessor/Tokenizer.l
src/compiler/translator/glslang_lex.cpp
src/compiler/translator/glslang_tab.cpp
src/compiler/translator/glslang_tab.h

Original comment by bugdroid1@chromium.org on 1 May 2015 at 2:26

GoogleCodeExporter commented 9 years ago
Project: angle/angle
Branch : master
Author : Jamie Madill <jmadill@chromium.org>
Commit : 2dc8bf8b2b960971d90a2a9bee0915024ef5015f

Code-Review  0 : Jamie Madill, Nico Weber
Code-Review  +1: Geoff Lang
Code-Review  +2: Zhenyao Mo
Verified     0 : Geoff Lang, Nico Weber, Zhenyao Mo
Verified     +1: Jamie Madill
Commit Queue   : Chumped
Change-Id      : Ied044fb87a9b05c91cb419c54295c39f0f0ab776
Reviewed-at    : https://chromium-review.googlesource.com/268512

translator: Fix C++11-deprecated register usage.

Define 'register' as an empty string if we're in a modern version
of C++.

BUG=255186
BUG=angleproject:463

src/compiler/preprocessor/Tokenizer.cpp
src/compiler/preprocessor/Tokenizer.l
src/compiler/translator/glslang.l
src/compiler/translator/glslang_lex.cpp

Original comment by bugdroid1@chromium.org on 1 May 2015 at 2:36