Hi Ben,
Sorry I didn't get a chance to test 2.0.13 before it was released.
I've now tested 2.0.99, which I understand is a development version of
what will become 2.1.0.
It also does not build on win32-x86, but with a different error.
Here are the errors and warnings on win32-x86:
cl /nologo /EHsc /GR -c -DPVCA /nologo /D__STDC__=0
/D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /Ox /GL /W3
/w44355 /MT -DEPICS_DLL_NO /TP -I.
-I..\\O.Common -I. -I..
-I..\\..\\..\\include\\os\\WIN32 -I..\\..\\..\\include
-IH:\\epics\\base-3.14.12\\include\\os\\WIN32
-IH:\\epics\\base-3.14.12\\include ..\\pv.cc
pv.cc
..\pv.cc(245) : warning C4390: ';' : empty controlled statement found;
is this the intent?
..\pv.cc(341) : warning C4390: ';' : empty controlled statement found;
is this the intent?
..\pv.cc(366) : warning C4390: ';' : empty controlled statement found;
is this the intent?
cl -c /nologo /D__STDC__=0 /D_CRT_SECURE_NO_DEPRECATE
/D_CRT_NONSTDC_NO_DEPRECATE /Ox /GL /W3 /w44355 /MT -DEPICS_DLL_NO
-I. -I..\\O.Common -I.
-I.. -I..\\..\\..\\include\\os\\WIN32 -I..\\..\\..\\include -IH:\\epics\\base-3.14.12\\include\\os\\WIN32
-IH:\\epics\\base-3.14.12\\include ..\\seq_main.c
seq_main.c
..\seq_main.c(342) : warning C4244: '=' : conversion from 'long' to
'short', possible loss of data
..\seq_main.c(444) : error C2036: 'void *' : unknown size
..\seq_main.c(514) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
..\seq_main.c(519) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
..\seq_main.c(524) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
..\seq_main.c(529) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
..\seq_main.c(534) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
..\seq_main.c(539) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
..\seq_main.c(544) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
..\seq_main.c(549) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
..\seq_main.c(554) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
..\seq_main.c(559) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
..\seq_main.c(564) : warning C4244: 'initializing' : conversion from
'long' to 'short', possible loss of data
make[3]: *** [seq_main.obj] Error 2
make[3]: Leaving directory `/cygdrive/j/epics/devel/seq-2-0-99/src/seq/O.win32-x86'
It builds on cygwin-x86, but with the following warnings:
gcc -c -D_POSIX_THREADS -D_POSIX_TIMERS -DUNIX
-DCYGWIN32 -O3 -Wall -m32 -DEPICS_DLL_NO -MMD -I.
-I../O.Common -I. -I..
-I../../../include/os/cygwin32 -I../../../include
-I/corvette/usr/local/epics/base-3.14.12/include/os/cygwin32
-I/corvette/usr/local/epics/base-3.14.12/include ../lemon.c
../lemon.c: In function `main':
../lemon.c:1468: warning: array subscript has type `char'
../lemon.c: In function `parseonetoken':
../lemon.c:2007: warning: array subscript has type `char'
../lemon.c:2037: warning: array subscript has type `char'
../lemon.c:2077: warning: array subscript has type `char'
../lemon.c:2146: warning: array subscript has type `char'
../lemon.c:2174: warning: array subscript has type `char'
../lemon.c:2174: warning: array subscript has type `char'
../lemon.c:2189: warning: array subscript has type `char'
../lemon.c:2211: warning: array subscript has type `char'
../lemon.c:2289: warning: array subscript has type `char'
../lemon.c:2303: warning: array subscript has type `char'
../lemon.c:2318: warning: array subscript has type `char'
../lemon.c:2336: warning: array subscript has type `char'
../lemon.c:2396: warning: array subscript has type `char'
../lemon.c:2417: warning: array subscript has type `char'
../lemon.c: In function `preprocess_input':
../lemon.c:2456: warning: array subscript has type `char'
../lemon.c:2464: warning: array subscript has type `char'
../lemon.c:2465: warning: array subscript has type `char'
../lemon.c:2469: warning: array subscript has type `char'
../lemon.c:2470: warning: array subscript has type `char'
../lemon.c: In function `Parse':
../lemon.c:2626: warning: array subscript has type `char'
../lemon.c: In function `tplt_xfer':
../lemon.c:3078: warning: array subscript has type `char'
../lemon.c: In function `translate_code':
../lemon.c:3301: warning: array subscript has type `char'
../lemon.c:3301: warning: array subscript has type `char'
../lemon.c:3303: warning: array subscript has type `char'
../lemon.c: In function `print_stack_union':
../lemon.c:3458: warning: array subscript has type `char'
../lemon.c:3460: warning: array subscript has type `char'
../lemon.c: In function `ReportTable':
../lemon.c:3652: warning: array subscript has type `char'
../lemon.c:3653: warning: array subscript has type `char'
../lemon.c: In function `Symbol_new':
../lemon.c:4401: warning: array subscript has type `char'
I have a couple of other comments.
- 2.1.0 will require the utility program re2c. I was able to install
this on Linux with “yum”. On Windows it is just a .zip file
containing only a re2c.exe, which I just put somewhere in my PATH. Is this
utility available for all EPICS supported hosts? The last release of re2c was
3 years ago. Will it continue to be well supported? It would certainly be
nicer if the lexical tools provided in EPICS base could be used, rather than
requiring another utility.
- Your documentation says: “Please respect the coding style when
making changes. This includes indentation (tabs or spaces, how many) and all
the other little things on which programmers like to differ ;-) like placement
of braces etc. Note that for historical reasons the style differs somewhat between
subdirectories. It is much easier for me to review patches if they do not
contain gratuitous changes or combine several unrelated changes in a single
patch.”
I completely understand what you are saying here. However, one of the
things that Eric Norum did post 2.0.12 was to convert all hard tabs to spaces
in the files. 2.0.99 still has hard tabs in many files. All C and C++ style
guides I’ve read recommend strongly against hard tabs. They make the
files difficult to edit, because the default tab spacing is editor dependent,
etc. It would be nice to get rid of hard tabs if possible.
Thanks for all the work on this.
Cheers,
Mark
-----Original Message-----
From: Benjamin Franksen [mailto:[email protected]]
Sent: Monday, May 09, 2011 7:43 PM
To: Mark Rivers
Cc: [email protected]
Subject: Re: Announce: seq-2.0.13
Hi Mark
Am Montag, 9. Mai 2011, um 18:32:04 schrieben Sie:
> seq-2.0.13 does not build for me on win32-x86.
Sorry for that. Note that I am *not* able to test nor build on all
supported
platforms. Which is why I sent out two release candidates and waited
more than
a week for people to report problems like that *before* making the
release.
> The problem is the line
>
> #include <unistd.h>
>
> in src/snc/snc_lex.l.
>
> Changing this to
>
> #include <osiUnistd.h>
>
> fixes the problem.
>
> Unfortunately it appears that a number of fixes that were applied
to the
> APS Subversion repository after the release of seq-2-0-12 were
lost in the
> upgrade to seq-2-0-13. This includes the fix above.
I became aware of the subversion repository at APS only after I had
already
made extensive changes based on the released 2.0.12. This is why I had
to
(manually) merge the changes in the APS repo after 2.0.12 into my
development
branch. I tried to merge *those* changes back into 2.0.13 but I must
have
overlooked this one. Note that I never expected to continue development
of the
old 2.0.12 branch and that releasing 2.0.13 is purely a stop-gap
measure
because the work on 2.1.0 took a lot more time than I originally
expected.
> These are the logs of the commits that were made to that
repository after
> the release of seq-2-0-12, which was svn tag 194.
>
> corvette:~/devel/seq-2-0-12>../utils/logModuleFromTag_asd.py
sncseq
> seq-2-0-12
>
------------------------------------------------------------------------
> r195 | anj | 2009-08-16 23:41:56 -0500 (Sun, 16 Aug 2009) | 2
lines
> Changed paths:
> M /trunk/src/seq/seq_qry.c
>
> Fix build warning on 64-bit archs.
This relates to printf warnings and is fixed in 2.0.13 since I can
compile on
64 bit linux w/o getting such warnings.
>
------------------------------------------------------------------------
> r196 | anj | 2009-09-02 14:11:36 -0500 (Wed, 02 Sep 2009) | 2
lines
> Changed paths:
> M /trunk/src/snc/phase2.c
>
> Add #include "epicsExport.h" to generated output file.
This change is in 2.0.13.
>
------------------------------------------------------------------------
> r197 | anj | 2009-09-02 14:12:38 -0500 (Wed, 02 Sep 2009) | 2
lines
> Changed paths:
> M /trunk/src/seq/seq.h
> M /trunk/src/seq/seqCom.h
>
> Fix SEQ_UGLY_WINDOWS_HACK properly.
This change is in 2.0.13.
>
------------------------------------------------------------------------
> r198 | anj | 2009-09-02 14:21:42 -0500 (Wed, 02 Sep 2009) | 2
lines
> Changed paths:
> M /trunk/src/dev
> M /trunk/src/pv
> M /trunk/src/seq
> M /trunk/src/snc
>
> Set svn:ignore to ignore O.* directories.
This change is irrelevant as I don't use svn.
>
------------------------------------------------------------------------
> r199 | anj | 2009-09-02 14:53:10 -0500 (Wed, 02 Sep 2009) | 2
lines
> Changed paths:
> M /trunk/configure
> M /trunk/test/demo
> M /trunk/test/simple
> M /trunk/test/validate
>
> Set svn:ignore to ignore O.* directories.
Same.
>
------------------------------------------------------------------------
> r200 | norume | 2009-09-03 12:29:46 -0500 (Thu, 03 Sep 2009) | 5
lines
> Changed paths:
> M /trunk/src/snc/gen_ss_code.c
> M /trunk/src/snc/gen_tables.c
> M /trunk/src/snc/parse.c
> M /trunk/src/snc/phase2.c
> M /trunk/src/snc/proto.h
> M /trunk/src/snc/snc.y
> M /trunk/src/snc/snc_lex.l
> M /trunk/src/snc/snc_main.c
>
> 1) Converted all functions to ANSI-style argument lists. Fixed
some call
> errors uncovered by this. 2) Added prototypes.
> 3) Fixed some pointer/int warnings.
> 4) Converted format to 'EPICS standard' (no hard tabs)
I was already done ansificating everything in the compiler when I
became aware
of this change, so I ignored it. This is the only change amnong teh
ones you
listed that touches src/snc/snc_lex.l, and indeed addition of the
#include
<osiUnistd.h> line has been hiding here. I'll fix this, but it
means I have to
make a 2.0.14 release.
>
------------------------------------------------------------------------
> r201 | rivers | 2010-10-17 22:32:46 -0500 (Sun, 17 Oct 2010) | 1
line
> Changed paths:
> M /trunk/src/snc/Makefile
>
> Remove the fl and l libraries, they are not needed
> ------------------------------------------------------------------------
This is also fixed in 2.0.13.
Cheers
Ben
________________________________
Helmholtz-Zentrum Berlin für Materialien und Energie
GmbH
Mitglied der Hermann von Helmholtz-Gemeinschaft Deutscher
Forschungszentren e.V.
Aufsichtsrat: Vorsitzender Prof. Dr. Dr. h.c. mult. Joachim
Treusch, stv. Vorsitzende Dr. Beatrix Vierkorn-Rudolph
Geschäftsführer: Prof. Dr. Anke Rita Kaysser-Pyzalla,
Prof. Dr. Dr. h.c. Wolfgang Eberhardt, Dr. Ulrich Breuer
Sitz Berlin, AG Charlottenburg, 89 HRB 5583
Postadresse:
Hahn-Meitner-Platz 1
D-14109 Berlin
http://www.helmholtz-berlin.de