In response to a request, here are the errors produced by
egcs-1.0.3a/pgcc-2.91.51 when compiling Lilypond-1.0.0. I've fixed
them for my system, but I'm not at all sure if my changes are 'good'
C++. Here are the problems.

first:

rm -f out/interval.dep; DEPENDENCIES_OUTPUT="out/interval.dep out/interval.o" c++ -c  
-DHAVE_CONFIG_H  -g -Iinclude -Iout
-I../lib/include -I../lib/out -I../flower/include -I../flower/out -g -O  -Wall -W 
-Wmissing-prototypes -Wmissing-declarations
-Wconversion  interval.cc -o out/interval.o
interval.cc:18: specialization of Interval_t<double>::infinity<Real>() after 
instantiation
interval.cc:24: specialization of Interval_t<double>::T_to_str<Real>(double) after 
instantiation
interval.cc:32: specialization of Interval_t<int>::infinity<int>() after instantiation
interval.cc:38: specialization of Interval_t<int>::T_to_str<int>(int) after 
instantiation
make[1]: *** [out/interval.o] Error 1
make[1]: Leaving directory `/usr/src/lilypond-1.0.0/flower'
make: *** [all] Error 2

second:

rm -f out/binary-source-file.dep; DEPENDENCIES_OUTPUT="out/binary-source-file.dep 
out/binary-source-file.o" c++ -c  -DHAVE_CONFIG_H
 -g -Iinclude -Iout -I../lib/include -I../lib/out -I../flower/include -I../flower/out  
   -g -O  -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wconversion
-D_REENTRANT binary-source-file.cc -o out/binary-source-file.o rm -f 
out/duration-convert.dep; DEPENDENCIES_OUTPUT="out/duration-convert.dep
out/duration-convert.o" c++ -c  -DHAVE_CONFIG_H  -g -Iinclude -Iout -I../lib/include 
-I../lib/out -I../flower/include -I../flower/out
-g -O  -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wconversion -D_REENTRANT 
duration-convert.cc -o out/duration-convert.o
In file included from include/duration.hh:16,
                 from include/duration-convert.hh:12,
                 from duration-convert.cc:10:
include/moment.hh:21: warning: ANSI C++ forbids declaration `infinity_mom' with no type
duration-convert.cc:15: duplicate initialization of Duration_convert::midi_as_plet_b_s
make[1]: *** [out/duration-convert.o] Error 1
make[1]: Leaving directory `/usr/src/lilypond-1.0.0/lib'
make: *** [all] Error 2

third:

rm -f out/abbrev.dep; DEPENDENCIES_OUTPUT="out/abbrev.dep out/abbrev.o" c++ -c  
-DHAVE_CONFIG_H  -g -Iinclude -Iout
-I../lib/include -I../lib/out -I../flower/include -I../flower/out -g -O  -Wall -W 
-Wmissing-prototypes -Wmissing-declarations
-Wconversion  abbrev.cc -o out/abbrev.o
In file included from include/drul-array.hh:13,
                 from include/item.hh:15,
                 from include/abbrev.hh:13,
                 from abbrev.cc:10:
include/direction.hh:39: warning: ANSI C++ forbids declaration `' with no type
include/direction.hh:39: abstract declarator `int' used as declaration
include/direction.hh:39: template declaration of `int ._10'
In file included from include/paper-def.hh:16,
                 from abbrev.cc:13:
../lib/include/moment.hh:21: warning: ANSI C++ forbids declaration `infinity_mom' with 
no type
abbrev.cc: In method `struct Molecule * Abbreviation::brew_molecule_p() const':
abbrev.cc:36: warning: unused variable `Real interline_f'
make[1]: *** [out/abbrev.o] Error 1
make[1]: Leaving directory `/usr/src/lilypond-1.0.0/lily'
make: *** [all] Error 2

fourth:

rm -f out/template5.dep; DEPENDENCIES_OUTPUT="out/template5.dep out/template5.o" c++ 
-c  -DHAVE_CONFIG_H  -g -Iinclude -Iout
-I../lib/include -I../lib/out -I../flower/include -I../flower/out -g -O  -Wall -W 
-Wmissing-prototypes -Wmissing-declarations
-Wconversion  template5.cc -o out/template5.o
In file included from template5.cc:12:
../lib/include/moment.hh:21: warning: ANSI C++ forbids declaration `infinity_mom' with 
no type
template5.cc:23: specialization of Interval_t<Rational>::infinity<Rational>() after 
instantiation
template5.cc:31: specialization of  Interval_t<Rational>::T_to_str<Rational>(Rational) 
after instantiation
make[1]: *** [out/template5.o] Error 1
make[1]: Leaving directory `/usr/src/lilypond-1.0.0/lily'
make: *** [all] Error 2

fifth:

rm -f out/mudela-item.dep; DEPENDENCIES_OUTPUT="out/mudela-item.dep out/mudela-item.o" 
c++ -c  -DHAVE_CONFIG_H  -g -Iinclude -Iout
-I../lib/include -I../lib/out -I../flower/include -I../flower/out -g -O  -Wall -W 
-Wmissing-prototypes -Wmissing-declarations
-Wconversion  mudela-item.cc -o out/mudela-item.o
In file included from ../lib/include/duration.hh:16,
                 from ../lib/include/duration-convert.hh:12,
                 from mudela-item.cc:9:
../lib/include/moment.hh:21: warning: ANSI C++ forbids declaration `infinity_mom' with 
no type
In file included from mudela-item.cc:11:
include/mudela-item.hh:78: warning: ANSI C++ forbids initialization of const member 
`c0_pitch_i_c_'
include/mudela-item.hh:78: warning: making `c0_pitch_i_c_' static
mudela-item.cc:156: duplicate initialization of Mudela_note::simple_plet_b_s
make[1]: *** [out/mudela-item.o] Error 1
make[1]: Leaving directory `/usr/src/lilypond-1.0.0/mi2mu'
make: *** [all] Error 2

OK, that's it. I've tweaked my version to get around these problems,
but the modifications are probably terrible C++. I hope this helps
somebody.

Yours,

John Hayward-Warburton



Reply via email to