MantisBT - GCC-XML |
| View Issue Details |
|
| ID | Project | Category | View Status | Date Submitted | Last Update |
| 0012932 | GCC-XML | (No Category) | public | 2012-02-03 11:13 | 2012-07-26 08:02 |
|
| Reporter | ellert | |
| Assigned To | Brad King | |
| Priority | normal | Severity | major | Reproducibility | always |
| Status | closed | Resolution | fixed | |
| Platform | x86_64 | OS | Fedora Linux | OS Version | 17 |
|
| Summary | 0012932: gccxml lacks support for gcc 4.7 |
| Description | Fedora 17 uses gcc 4.7. gccxml has no support for it |
| Steps To Reproduce | ctest
Test project /builddir/build/BUILD/gccxml-0.9.0-20111218
Start 1: gxConfiguration.cxx
1/11 Test #1: gxConfiguration.cxx ..............***Failed 0.44 sec
Start 2: gxConfiguration.h
2/11 Test 0000002: gxConfiguration.h ................***Failed 0.33 sec
Start 3: gxDocumentation.cxx
3/11 Test 0000003: gxDocumentation.cxx ..............***Failed 0.34 sec
Start 4: gxDocumentation.h
4/11 Test 0000004: gxDocumentation.h ................***Failed 0.33 sec
Start 5: gxFlagsParser.cxx
5/11 Test 0000005: gxFlagsParser.cxx ................***Failed 0.36 sec
Start 6: gxFlagsParser.h
6/11 Test 0000006: gxFlagsParser.h ..................***Failed 0.33 sec
Start 7: gxFront.cxx
7/11 Test 0000007: gxFront.cxx ......................***Failed 0.35 sec
Start 8: gxSystemTools.cxx
8/11 Test 0000008: gxSystemTools.cxx ................***Failed 0.34 sec
Start 9: gxSystemTools.h
9/11 Test #9: gxSystemTools.h ..................***Failed 0.33 sec
Start 10: TestFullPathInclude.cxx
10/11 Test 0000010: TestFullPathInclude.cxx ..........***Failed 0.33 sec
Start 11: TestUsualInclude.cxx
11/11 Test #11: TestUsualInclude.cxx .............***Failed 0.34 sec
0% tests passed, 11 tests failed out of 11
|
| Additional Information | Copying the 4.6 support files to a 4.7 is sufficient to make ctest work,
ctest
Test project /builddir/build/BUILD/gccxml-0.9.0-20111218
Start 1: gxConfiguration.cxx
1/11 Test #1: gxConfiguration.cxx .............. Passed 0.73 sec
Start 2: gxConfiguration.h
2/11 Test 0000002: gxConfiguration.h ................ Passed 0.55 sec
Start 3: gxDocumentation.cxx
3/11 Test 0000003: gxDocumentation.cxx .............. Passed 0.56 sec
Start 4: gxDocumentation.h
4/11 Test 0000004: gxDocumentation.h ................ Passed 0.55 sec
Start 5: gxFlagsParser.cxx
5/11 Test 0000005: gxFlagsParser.cxx ................ Passed 0.58 sec
Start 6: gxFlagsParser.h
6/11 Test 0000006: gxFlagsParser.h .................. Passed 0.55 sec
Start 7: gxFront.cxx
7/11 Test 0000007: gxFront.cxx ...................... Passed 0.62 sec
Start 8: gxSystemTools.cxx
8/11 Test 0000008: gxSystemTools.cxx ................ Passed 0.61 sec
Start 9: gxSystemTools.h
9/11 Test #9: gxSystemTools.h .................. Passed 0.55 sec
Start 10: TestFullPathInclude.cxx
10/11 Test 0000010: TestFullPathInclude.cxx .......... Passed 0.55 sec
Start 11: TestUsualInclude.cxx
11/11 Test #11: TestUsualInclude.cxx ............. Passed 0.55 sec
100% tests passed, 0 tests failed out of 11
cp -pr GCC_XML/Support/GCC/4.6 GCC_XML/Support/GCC/4.7
I haven't made a more thorough investigation whether additional changes are needed. |
| Tags | No tags attached. |
| Relationships | | related to | 0013372 | resolved | Brad King | gccxml cannot parse <limits> under GCC 4.7.1 |
|
| Attached Files | gccxml-gcc4.7.tar.gz (58,008) 2012-03-09 07:05 https://public.kitware.com/Bug/file/4253/gccxml-gcc4.7.tar.gz
gccxml-gcc4.7.patch (16,207) 2012-03-09 07:06 https://public.kitware.com/Bug/file/4254/gccxml-gcc4.7.patch |
|
| Issue History |
| Date Modified | Username | Field | Change |
| 2012-02-03 11:13 | ellert | New Issue | |
| 2012-02-03 11:41 | Brad King | Note Added: 0028465 | |
| 2012-02-03 14:23 | Brad King | Note Added: 0028466 | |
| 2012-02-03 14:48 | Tim Finer | Note Added: 0028469 | |
| 2012-03-08 05:19 | ellert | Note Added: 0028861 | |
| 2012-03-08 07:37 | Brad King | Note Added: 0028862 | |
| 2012-03-09 07:05 | ellert | File Added: gccxml-gcc4.7.tar.gz | |
| 2012-03-09 07:06 | ellert | File Added: gccxml-gcc4.7.patch | |
| 2012-03-09 07:08 | ellert | Note Added: 0028874 | |
| 2012-03-09 08:39 | Brad King | Note Added: 0028875 | |
| 2012-03-09 08:39 | Brad King | Status | new => closed |
| 2012-03-09 08:39 | Brad King | Assigned To | => Brad King |
| 2012-03-09 08:39 | Brad King | Resolution | open => fixed |
| 2012-07-26 08:02 | Brad King | Relationship added | related to 0013372 |
|
Notes |
|
|
(0028465)
|
|
Brad King
|
|
2012-02-03 11:41
|
|
gccxml_builtins.h can be copied from 4.6 to 4.7 as a starting point. The other headers were all created by first committing original headers from the corresponding version and then committing fixups to help gccxml's parser handle things.
Unfortunately this is getting harder with every new GCC because gccxml still uses a GCC 4.2 parser internally and the GCC system headers are using more and more new parser/language features. |
|
|
|
(0028466)
|
|
Brad King
|
|
2012-02-03 14:23
|
|
|
|
|
(0028469)
|
|
Tim Finer
|
|
2012-02-03 14:48
|
|
|
Yeah, it's still a bit ahead. I think that the source for 4.7 is in trunk, according to their timeline, they'll cut a 4.7 branch in March. |
|
|
|
(0028861)
|
|
ellert
|
|
2012-03-08 05:19
|
|
|
|
|
(0028862)
|
|
Brad King
|
|
2012-03-08 07:37
|
|
Great. I'll need two patches for gccxml. The first should add the *original* versions of these files from GCC 4.7:
bits/stl_algo.h
bits/stl_algobase.h
complex
emmintrin.h
iomanip
mmintrin.h
xmmintrin.h
to GCC_XML/Support/GCC/4.7 (and perhaps new ones that we'll need to patch for 4.7). The second patch should apply changes to those files to fix them up for gccxml's parser. Look at the equivalent changes made to 4.6's headers for examples. |
|
|
|
(0028874)
|
|
ellert
|
|
2012-03-09 07:08
|
|
|
I have uploaded a tar file containing copies of the original files and a patch to adapt them to the gccxml parser. |
|
|
|
(0028875)
|
|
Brad King
|
|
2012-03-09 08:39
|
|
Fantastic. I've applied the patches as the three commits shown below. Thanks!
Add gccxml_builtins.h for GCC 4.7 starting with 4.6 version
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/gccxml_builtins.h,v <-- GCC_XML/Support/GCC/4.7/gccxml_builtins.h
initial revision: 1.1
Add GCC 4.7 original headers
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/bits/stl_algo.h,v <-- GCC_XML/Support/GCC/4.7/bits/stl_algo.h
initial revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/bits/stl_algobase.h,v <-- GCC_XML/Support/GCC/4.7/bits/stl_algobase.h
initial revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/complex,v <-- GCC_XML/Support/GCC/4.7/complex
initial revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/emmintrin.h,v <-- GCC_XML/Support/GCC/4.7/emmintrin.h
initial revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/iomanip,v <-- GCC_XML/Support/GCC/4.7/iomanip
initial revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/mmintrin.h,v <-- GCC_XML/Support/GCC/4.7/mmintrin.h
initial revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/xmmintrin.h,v <-- GCC_XML/Support/GCC/4.7/xmmintrin.h
initial revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/ext/atomicity.h,v <-- GCC_XML/Support/GCC/4.7/ext/atomicity.h
initial revision: 1.1
Update GCC 4.7 headers to work with gccxml's GCC 4.2 parser (0012932)
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/bits/stl_algo.h,v <-- GCC_XML/Support/GCC/4.7/bits/stl_algo.h
new revision: 1.2; previous revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/bits/stl_algobase.h,v <-- GCC_XML/Support/GCC/4.7/bits/stl_algobase.h
new revision: 1.2; previous revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/complex,v <-- GCC_XML/Support/GCC/4.7/complex
new revision: 1.2; previous revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/emmintrin.h,v <-- GCC_XML/Support/GCC/4.7/emmintrin.h
new revision: 1.2; previous revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/iomanip,v <-- GCC_XML/Support/GCC/4.7/iomanip
new revision: 1.2; previous revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/mmintrin.h,v <-- GCC_XML/Support/GCC/4.7/mmintrin.h
new revision: 1.2; previous revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/xmmintrin.h,v <-- GCC_XML/Support/GCC/4.7/xmmintrin.h
new revision: 1.2; previous revision: 1.1
/cvsroot/GCC_XML/gccxml/GCC_XML/Support/GCC/4.7/ext/atomicity.h,v <-- GCC_XML/Support/GCC/4.7/ext/atomicity.h
new revision: 1.2; previous revision: 1.1 |
|