From: Joseph W. <jo...@gn...> - 2008-12-29 00:21:25
|
I'm having parser compilation problems compiling off trunk. BTW over the next few weeks, I should be able to get swig working off buildbot so that we can have continuous builds. make[1]: Entering directory `/home/joe/swig/Source' /bin/sh ../Tools/config/ylwrap CParse/parser.y y.tab.c CParse/parser.c y.tab.h CParse/parser.h y.output CParse/parser.output -- bison -y -d /home/joe/swig/Source/CParse/parser.y:3234.20-21: $$ for the midrule at $6 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3235.28-29: $$ for the midrule at $6 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3236.28-29: $$ for the midrule at $6 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3238.30-31: $$ for the midrule at $6 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3239.30-31: $$ for the midrule at $6 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3240.30-31: $$ for the midrule at $6 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3242.28-29: $$ for the midrule at $6 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3271.28-29: $$ for the midrule at $6 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3274.45-46: $$ for the midrule at $6 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3343.48-49: $$ for the midrule at $6 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3466.16-17: $$ for the midrule at $4 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3467.24-25: $$ for the midrule at $4 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3468.24-25: $$ for the midrule at $4 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3469.24-25: $$ for the midrule at $4 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3470.24-25: $$ for the midrule at $4 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3471.24-25: $$ for the midrule at $4 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3473.41-42: $$ for the midrule at $4 of `cpp_class_decl' has no declared type /home/joe/swig/Source/CParse/parser.y:3492.44-45: $$ for the midrule at $4 of `cpp_class_decl' has no declared type make[1]: *** [CParse/parser.c] 错误 1 make[1]: Leaving directory `/home/joe/swig/Source' make: *** [source] 错误 2 [joe@bodhi swig]$ |
From: William S F. <ws...@fu...> - 2008-12-29 00:35:10
|
Joseph Wang wrote: > I'm having parser compilation problems compiling off trunk. > > BTW over the next few weeks, I should be able to get swig working off > buildbot so that we can have continuous builds. > > make[1]: Entering directory `/home/joe/swig/Source' > /bin/sh ../Tools/config/ylwrap CParse/parser.y y.tab.c CParse/parser.c > y.tab.h CParse/parser.h y.output CParse/parser.output -- bison -y -d > /home/joe/swig/Source/CParse/parser.y:3234.20-21: $$ for the midrule at > $6 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3235.28-29: $$ for the midrule at > $6 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3236.28-29: $$ for the midrule at > $6 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3238.30-31: $$ for the midrule at > $6 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3239.30-31: $$ for the midrule at > $6 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3240.30-31: $$ for the midrule at > $6 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3242.28-29: $$ for the midrule at > $6 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3271.28-29: $$ for the midrule at > $6 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3274.45-46: $$ for the midrule > at $6 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3343.48-49: $$ for the midrule > at $6 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3466.16-17: $$ for the midrule > at $4 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3467.24-25: $$ for the midrule > at $4 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3468.24-25: $$ for the midrule > at $4 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3469.24-25: $$ for the midrule > at $4 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3470.24-25: $$ for the midrule > at $4 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3471.24-25: $$ for the midrule at > $4 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3473.41-42: $$ for the midrule at > $4 of `cpp_class_decl' has no declared type > /home/joe/swig/Source/CParse/parser.y:3492.44-45: $$ for the midrule > at $4 of `cpp_class_decl' has no declared type > make[1]: *** [CParse/parser.c] 错误 1 > make[1]: Leaving directory `/home/joe/swig/Source' > make: *** [source] 错误 2 > [joe@bodhi swig]$ > > $ bison --version bison (GNU Bison) 2.3 and I don't get any of these problems. Maybe you've got a newer version which comes with stricter rules, but I'm not sure how we are meant to add in the expected type it is talking about. Do you get this with older versions of SWIG too? William |
From: William S F. <ws...@fu...> - 2008-12-29 00:57:12
|
William S Fulton wrote: > Joseph Wang wrote: >> I'm having parser compilation problems compiling off trunk. >> >> BTW over the next few weeks, I should be able to get swig working off >> buildbot so that we can have continuous builds. >> >> make[1]: Entering directory `/home/joe/swig/Source' >> /bin/sh ../Tools/config/ylwrap CParse/parser.y y.tab.c CParse/parser.c >> y.tab.h CParse/parser.h y.output CParse/parser.output -- bison -y -d >> /home/joe/swig/Source/CParse/parser.y:3234.20-21: $$ for the midrule at >> $6 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3235.28-29: $$ for the midrule at >> $6 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3236.28-29: $$ for the midrule at >> $6 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3238.30-31: $$ for the midrule at >> $6 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3239.30-31: $$ for the midrule at >> $6 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3240.30-31: $$ for the midrule at >> $6 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3242.28-29: $$ for the midrule at >> $6 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3271.28-29: $$ for the midrule at >> $6 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3274.45-46: $$ for the midrule >> at $6 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3343.48-49: $$ for the midrule >> at $6 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3466.16-17: $$ for the midrule >> at $4 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3467.24-25: $$ for the midrule >> at $4 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3468.24-25: $$ for the midrule >> at $4 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3469.24-25: $$ for the midrule >> at $4 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3470.24-25: $$ for the midrule >> at $4 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3471.24-25: $$ for the midrule at >> $4 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3473.41-42: $$ for the midrule at >> $4 of `cpp_class_decl' has no declared type >> /home/joe/swig/Source/CParse/parser.y:3492.44-45: $$ for the midrule >> at $4 of `cpp_class_decl' has no declared type >> make[1]: *** [CParse/parser.c] 错误 1 >> make[1]: Leaving directory `/home/joe/swig/Source' >> make: *** [source] 错误 2 >> [joe@bodhi swig]$ >> >> > $ bison --version > bison (GNU Bison) 2.3 > > and I don't get any of these problems. Maybe you've got a newer version > which comes with stricter rules, but I'm not sure how we are meant to > add in the expected type it is talking about. Do you get this with older > versions of SWIG too? Googling around I found this which should help give some clues as how to fix it. http://www.mail-archive.com/bug...@gn.../msg01228.html I suspect you need to change $$ to $<appropriate type>$ in the relevant spots, but I'm not a Bison expert and this syntax is new to me. The appropriate types will be one of those defined in the %union in parser.y. I don't know why there aren't more errors with regard to midrules, as we have many of them. Dave Beazley, any ideas? William |
From: Joseph W. <jo...@gn...> - 2008-12-29 18:56:02
|
Apparently it's a 2.3 -> 2.4 issue in that 2.4 tends to be a lot less forgiving than 2.3. I have a patch that converts the $$ to $<node>$ and that works, should I check it in? On 星期日 28 十二月 2008 18:56:54 William S Fulton wrote: > William S Fulton wrote: > > Joseph Wang wrote: > >> I'm having parser compilation problems compiling off trunk. > >> > >> BTW over the next few weeks, I should be able to get swig working off > >> buildbot so that we can have continuous builds. > >> > >> make[1]: Entering directory `/home/joe/swig/Source' > >> /bin/sh ../Tools/config/ylwrap CParse/parser.y y.tab.c CParse/parser.c > >> y.tab.h CParse/parser.h y.output CParse/parser.output -- bison -y -d > >> /home/joe/swig/Source/CParse/parser.y:3234.20-21: $$ for the midrule at > >> $6 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3235.28-29: $$ for the midrule at > >> $6 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3236.28-29: $$ for the midrule at > >> $6 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3238.30-31: $$ for the midrule at > >> $6 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3239.30-31: $$ for the midrule at > >> $6 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3240.30-31: $$ for the midrule at > >> $6 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3242.28-29: $$ for the midrule at > >> $6 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3271.28-29: $$ for the midrule at > >> $6 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3274.45-46: $$ for the midrule > >> at $6 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3343.48-49: $$ for the midrule > >> at $6 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3466.16-17: $$ for the midrule > >> at $4 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3467.24-25: $$ for the midrule > >> at $4 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3468.24-25: $$ for the midrule > >> at $4 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3469.24-25: $$ for the midrule > >> at $4 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3470.24-25: $$ for the midrule > >> at $4 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3471.24-25: $$ for the midrule at > >> $4 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3473.41-42: $$ for the midrule at > >> $4 of `cpp_class_decl' has no declared type > >> /home/joe/swig/Source/CParse/parser.y:3492.44-45: $$ for the midrule > >> at $4 of `cpp_class_decl' has no declared type > >> make[1]: *** [CParse/parser.c] 错误 1 > >> make[1]: Leaving directory `/home/joe/swig/Source' > >> make: *** [source] 错误 2 > >> [joe@bodhi swig]$ > > > > $ bison --version > > bison (GNU Bison) 2.3 > > > > and I don't get any of these problems. Maybe you've got a newer version > > which comes with stricter rules, but I'm not sure how we are meant to > > add in the expected type it is talking about. Do you get this with older > > versions of SWIG too? > > Googling around I found this which should help give some clues as how to > fix it. > > http://www.mail-archive.com/bug...@gn.../msg01228.html > > I suspect you need to change $$ to $<appropriate type>$ in the relevant > spots, but I'm not a Bison expert and this syntax is new to me. The > appropriate types will be one of those defined in the %union in > parser.y. I don't know why there aren't more errors with regard to > midrules, as we have many of them. Dave Beazley, any ideas? > > William |
From: William S F. <ws...@fu...> - 2008-12-29 20:46:58
|
Assuming the test-suite is okay, go for it. Thanks William Joseph Wang wrote: > Apparently it's a 2.3 -> 2.4 issue in that 2.4 tends to be a lot less > forgiving than 2.3. > > I have a patch that converts the $$ to $<node>$ and that works, should > I check > it in? > > On 星期日 28 十二月 2008 18:56:54 William S Fulton wrote: > > William S Fulton wrote: > >> Joseph Wang wrote: > >>> I'm having parser compilation problems compiling off trunk. > >>> > >>> BTW over the next few weeks, I should be able to get swig working off > >>> buildbot so that we can have continuous builds. > >>> > >>> make[1]: Entering directory `/home/joe/swig/Source' > >>> /bin/sh ../Tools/config/ylwrap CParse/parser.y y.tab.c CParse/parser.c > >>> y.tab.h CParse/parser.h y.output CParse/parser.output -- bison -y -d > >>> /home/joe/swig/Source/CParse/parser.y:3234.20-21: $$ for the > midrule at > >>> $6 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3235.28-29: $$ for the > midrule at > >>> $6 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3236.28-29: $$ for the > midrule at > >>> $6 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3238.30-31: $$ for the > midrule at > >>> $6 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3239.30-31: $$ for the > midrule at > >>> $6 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3240.30-31: $$ for the > midrule at > >>> $6 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3242.28-29: $$ for the > midrule at > >>> $6 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3271.28-29: $$ for the > midrule at > >>> $6 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3274.45-46: $$ for the midrule > >>> at $6 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3343.48-49: $$ for the midrule > >>> at $6 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3466.16-17: $$ for the midrule > >>> at $4 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3467.24-25: $$ for the midrule > >>> at $4 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3468.24-25: $$ for the midrule > >>> at $4 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3469.24-25: $$ for the midrule > >>> at $4 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3470.24-25: $$ for the midrule > >>> at $4 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3471.24-25: $$ for the > midrule at > >>> $4 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3473.41-42: $$ for the > midrule at > >>> $4 of `cpp_class_decl' has no declared type > >>> /home/joe/swig/Source/CParse/parser.y:3492.44-45: $$ for the midrule > >>> at $4 of `cpp_class_decl' has no declared type > >>> make[1]: *** [CParse/parser.c] 错误 1 > >>> make[1]: Leaving directory `/home/joe/swig/Source' > >>> make: *** [source] 错误 2 > >>> [joe@bodhi swig]$ > >> $ bison --version > >> bison (GNU Bison) 2.3 > >> > >> and I don't get any of these problems. Maybe you've got a newer version > >> which comes with stricter rules, but I'm not sure how we are meant to > >> add in the expected type it is talking about. Do you get this with > older > >> versions of SWIG too? > > Googling around I found this which should help give some clues as how to > > fix it. > > > > http://www.mail-archive.com/bug...@gn.../msg01228.html > > > > I suspect you need to change $$ to $<appropriate type>$ in the relevant > > spots, but I'm not a Bison expert and this syntax is new to me. The > > appropriate types will be one of those defined in the %union in > > parser.y. I don't know why there aren't more errors with regard to > > midrules, as we have many of them. Dave Beazley, any ideas? > > > > William > > |
From: Joseph W. <jo...@gn...> - 2008-12-29 19:01:41
|
I've run the regression tests with Soeren's patch. There is one local R regression test that gets triggered because of the integer/numeric change which I'm fixing. The change requires that the user put lots of as.integer(1) rather than passing 1 directly into the R function, and this has to be documented in the release notes. There is also an unrelated regression that has to do with the way that exceptions are handled. I'll need two or three days to fix everything. Does that mesh with the release schedule? |
From: William S F. <ws...@fu...> - 2008-12-29 20:57:31
|
Joseph Wang wrote: > I've run the regression tests with Soeren's patch. There is one local R > regression test that gets triggered because of the integer/numeric change > which I'm fixing. The change requires that the user put lots of > as.integer(1) > rather than passing 1 directly into the R function, and this has to be > documented in the release notes. > I don't know that I fully understand what the patch is fixing, but that seems user unfriendly, but then you'd know best. Is there consistency amongst all the primitive types? > There is also an unrelated regression that has to do with the way that > exceptions are handled. I'll need two or three days to fix > everything. Does > that mesh with the release schedule? I was going to do full testing tonight and release tomorrow. It is just a release candidate, so if you miss this, it can still go in the real release. Unless your changes are really big, I'd rather get this release candidate out tomorrow. William |