Thanks a lot Jon, I will adjust it,and git push it again. zhusonghe@eswincomputing.com From: Jon Turney Date: 2023-03-17 02:55 To: Songhe Zhu; newlib@sourceware.org Subject: Re: [PATCH] Cygwin: doc: Fix type mismatch in porting.texi On 16/03/2023 02:59, Songhe Zhu wrote: > Issue:newlib/libgloss/doc/porting.texi:570: warning: @ref node name should not contain `.' > newlib/libgloss/doc/porting.texi:747: warning: @ref node name should not contain `.' > newlib/libgloss/doc/porting.texi:938: warning: @ref node name should not contain `.' > > reproduce: > git clone https://github.com/riscv-collab/riscv-gnu-toolchain.git > cd riscv-gnu-toolchain > ./configure --prefix=`pwd`/install --with-arch=rv64gc --with-abi=lp64d --enable-multilib > make -j $(nproc) > > The above issue will happen when executing the build command. This patch eliminates these warnings. > @ref{That},'That' does not contain node; > I think it's just appropriate to use @file here, > @file{file-name},'file-name' support node; > refer:https://www.gnu.org/software/texinfo/manual/texinfo/texinfo.html#g_t_0040file From a brief reading of that, it doesn't appear that @file{} supports the 3 argument form, so should the 2nd and 3rd arguments be dropped? This would seem to change the meaning subtly, as it drops the indication that the files in Appendix A are examples. Then again, these uses of @ref alone as a sentence are just ungrammatical. So maybe the correct solution is to give those sections names which don't contain '.' and/or embed these references into sentences which direct the reader to that full example, from which a sample is given below (or whatever the documentation is actually trying to say, I'm not well versed enough in libgloss to know for sure) > --- > libgloss/doc/porting.texi | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/libgloss/doc/porting.texi b/libgloss/doc/porting.texi > index 15f214d02..4a269a970 100644 > --- a/libgloss/doc/porting.texi > +++ b/libgloss/doc/porting.texi > @@ -567,7 +567,7 @@ and then the ROM takes over. Pick a safe vector with no side > effects. Some ROMs have a builtin trap handler just for this case. > @end enumerate > portable between all the m68k based boards we have here. > -@ref{crt0.S,,Example Crt0.S}. > +@file{crt0.S,,Example Crt0.S}. > > > @smallexample > @@ -744,7 +744,7 @@ check a few critical addresses like @code{start}, @code{bss_end}, and > > Here's a breakdown of a linker script for a m68k based target board. > See the file @code{libgloss/m68k/idp.ld}, or go to the appendixes in > -the end of the manual. @ref{idp.ld,,Example Linker Script}. > +the end of the manual. @file{idp.ld,,Example Linker Script}. > > @smallexample > STARTUP(crt0.o) > @@ -935,7 +935,7 @@ sbrk(). @code{malloc()}, @code{calloc()}, and @code{realloc()} all call > @code{sbrk()} at there lowest level. @code{caddr_t} is defined elsewhere > as @code{char *}. @code{RAMSIZE} is presently a compile time option. All > this does is move a pointer to heap memory and check for the upper > -limit. @ref{glue.c,,Example libc support code}. @code{sbrk()} returns a > +limit. @file{glue.c,,Example libc support code}. @code{sbrk()} returns a > pointer to the previous value before more memory was allocated. > > @smallexample