Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failing tests under Windows - msys2 64bit with mingw64 build env #1

Open
stephan48 opened this issue Jan 1, 2022 · 0 comments
Open

Comments

@stephan48
Copy link

stephan48 commented Jan 1, 2022

I tested building and checking colorize under Windows in the msys2 environment.

The build ran flawlessly with just some minor warnings:

perl ./version.pl > version.h
gcc  -ansi -pedantic   -o colorize colorize.c \
  -DCPPFLAGS="\"\"" -DCFLAGS="\"-ansi -pedantic \"" -DLDFLAGS="\"\"" \
  -DHAVE_VERSION
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~

The check however failed:


perl ./test.pl --regular
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
t/conf/attr_clear.t ..... ok
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
t/conf/color.t .......... ok
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
t/conf/endings.t ........ ok
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
t/conf/fail.t ........... ok
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
t/conf/param.t .......... ok
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
t/conf/parse/fail.t ..... ok
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
t/conf/parse/success.t .. ok
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
t/conf/use.t ............ ok
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
t/fail.t ................ ok
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
t/merge.t ............... ok
All tests successful.
Files=10, Tests=261, 35 wallclock secs ( 0.05 usr  0.11 sys +  7.16 cusr 20.67 csys = 27.98 CPU)
Result: PASS
1..32
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
In file included from colorize.c:27:
colorize.c: In function ‘process_opt_attr’:
colorize.c:616:23: warning: array subscript has type ‘char’ [-Wchar-subscripts]
  616 |         if (!isalnum (*p))
      |                       ^~
colorize.c:619:25: warning: array subscript has type ‘char’ [-Wchar-subscripts]
  619 |         while (isalnum (*p))
      |                         ^~
colorize.c: In function ‘parse_conf’:
colorize.c:754:25: warning: array subscript has type ‘char’ [-Wchar-subscripts]
  754 |           if (!isalnum (*p) && *p != '-')
      |                         ^~
colorize.c: In function ‘gather_color_names’:
colorize.c:1209:25: warning: array subscript has type ‘char’ [-Wchar-subscripts]
 1209 |           if (!isalpha (*ch))
      |                         ^~~
colorize.c:1213:25: warning: array subscript has type ‘char’ [-Wchar-subscripts]
 1213 |           if (!islower (*ch))
      |                         ^~~
colorize.c:1219:22: warning: array subscript has type ‘char’ [-Wchar-subscripts]
 1219 |         if (isupper (*color))
      |                      ^~~~~~
colorize.c: In function ‘gather_esc_offsets’:
colorize.c:1607:29: warning: array subscript has type ‘char’ [-Wchar-subscripts]
 1607 |               if (!isdigit (*p))
      |                             ^~
colorize.c:1610:31: warning: array subscript has type ‘char’ [-Wchar-subscripts]
 1610 |               while (isdigit (*p))
      |                               ^~
colorize.c: In function ‘validate_esc_clean_all’:
colorize.c:1643:21: warning: array subscript has type ‘char’ [-Wchar-subscripts]
 1643 |     while (isdigit (**p) || **p == ';')
      |                     ^~~
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
ok 1 - exit value for help screen
ok 2 - exit value for version data
ok 3 - line read from stdin with newline
ok 4 - line read from stdin without newline
ok 5 - text read from stdin
ok 6 - text read from file
ok 7 - clean color sequences
ok 8 - clean colored words
ok 9 - clean colored line
ok 10 - clean colored text
ok 11 - clean attribute
ok 12 - clean attributes
ok 13 - clean with invalid sequence
ok 14 - clean strict options
ok 15 - clean-all colored words
ok 16 - clean-all colored line
ok 17 - clean-all colored text
ok 18 - clean-all attribute
ok 19 - clean-all attributes
ok 20 - clean-all with invalid sequence
ok 21 - clean-all strict options
ok 22 - clean-all color sequences
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
ok 23 - print 80 bytes (BUF_SIZE=10, clean)
ok 24 - print 80 bytes (BUF_SIZE=10, clean-all)
ok 25 - read 13600 bytes (BUF_SIZE=1024)
ok 26 - count of sequences printed
ok 27 - no color sequences printed
not ok 28 - stream mode

#   Failed test 'stream mode'
#   at ./test.pl line 152.
#          got: 'hello
# world
# '
#     expected: 'hello
# world
# '
ok 29 - switch exclude-random
ok 30 - switch omit-color-empty
ok 31 # skip valgrind not found
colorize.c:362:12: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  362 | extern int optind;
      |            ^~~~~~
colorize.c:516:14: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  516 | extern char *optarg;
      |              ^~~~~~
ok 32 - debugging build
Colors
======
none
black
Black
red
Red
green
Green
yellow
Yellow
blue
Blue
magenta
Magenta
cyan
Cyan
white
White
default
Default
random
Random
Attributes
==========
bold
underscore
blink
reverse
concealed
# Looks like you failed 1 test of 32.
make: *** [Makefile:18: check] Error 1

The colors looked good but the stream mode test failed:
not ok 28 - stream mode

The warnings should be fixed and the test repaired

stsc added a commit that referenced this issue Jan 2, 2022
fixes: warning: array subscript has type ‘char’ [-Wchar-subscripts]

#1

Thanks Stephan Jauernick
stsc added a commit that referenced this issue Jun 13, 2022
fixes: warning: ‘optind’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
fixes: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]

#1

Thanks Stephan Jauernick
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant