chicken-janitors
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-janitors] #917: tests that rely on diff break with clang (w


From: Chicken Trac
Subject: Re: [Chicken-janitors] #917: tests that rely on diff break with clang (was: scrutiny test breaks with clang)
Date: Fri, 07 Sep 2012 00:51:26 -0000

#917: tests that rely on diff break with clang
----------------------+-----------------------------------------------------
  Reporter:  mario    |       Owner:                      
      Type:  defect   |      Status:  new                 
  Priority:  minor    |   Milestone:                      
 Component:  unknown  |     Version:  4.8.x               
Resolution:           |    Keywords:  scrutiny tests clang
----------------------+-----------------------------------------------------
Description changed by mario:

Old description:

> Not a serious problem.  clang generates some warnings that are not in
> tests/scrutiny.expected, so diff reports differences.
>
> Here's the full output of the scrutiny test when built by clang:
>
> {{{
> ======================================== scrutiny tests ...
> ../chicken typematch-tests.scm -output-file a.c -verbose -include-path ..
> -specialize -no-warnings
> clang a.c -o a.o -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
> -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -w -I..
> -I"/home/mario/local/chicken-4.8.0rc3-clang/include/chicken"
> rm a.c
> clang a.o -o a.out -L.. -L"/home/mario/local/chicken-4.8.0rc3-clang/lib"
> -Wl,-R"/home/mario/local/chicken-4.8.0rc3-clang/lib" -lchicken -lm -ldl
> rm a.o
> check fixnum 123
> check string abc
> check symbol (quote abc)
> check char x
> check boolean #t
> check number (+ 1 2)
> check (list fixnum) (quote (1))
> check (list symbol) (quote (a))
> check (list fixnum) (list 1)
> check pair (quote (1 . 2))
> check procedure +
> check vector (quote #(1))
> check null (quote ())
> check input-port (current-input-port)
> check blob (make-blob 10)
> check pointer (address->pointer 0)
> check pointer-vector (make-pointer-vector 1)
> check locative (make-locative a)
> check (struct promise) (##sys#make-structure (quote promise))
> check (pair fixnum float) (quote (1 . 2.3))
> check (vector symbol) (quote #(a))
> check (list string) (quote (ok))
> specialize fixnum
> specialize not fixnum
> specialize string
> specialize not string
> specialize symbol
> specialize not symbol
> specialize char
> specialize not char
> specialize boolean
> specialize not boolean
> specialize (list fixnum)
> specialize not (list fixnum)
> specialize pair
> specialize not pair
> specialize procedure
> specialize not procedure
> specialize (vector fixnum)
> specialize not (vector fixnum)
> specialize null
> specialize not null
> specialize undefined
> specialize not undefined
> specialize input-port
> specialize not input-port
> specialize blob
> specialize not blob
> specialize pointer
> specialize not pointer
> specialize pointer-vector
> specialize not pointer-vector
> specialize locative
> specialize not locative
> specialize (struct promise)
> specialize not (struct promise)
> specialize (pair fixnum float)
> specialize not (pair fixnum float)
> specialize (vector symbol)
> specialize not (vector symbol)
> specialize (or (list fixnum) symbol)
> specialize not (or (list fixnum) symbol)
> specialize (list fixnum)
> specialize not (list fixnum)
> specialize (or null pair)
> specialize not (or null pair)
> check predicate boolean boolean?
> check predicate boolean boolean?
> check predicate pair pair?
> check predicate null null?
> check predicate symbol symbol?
> check predicate number number?
> check predicate number number?
> check predicate fixnum exact?
> check predicate number real?
> check predicate number complex?
> check predicate float inexact?
> check predicate char char?
> check predicate string string?
> check predicate vector vector?
> check predicate procedure procedure?
> check predicate blob blob?
> check predicate (struct condition) condition?
> check predicate fixnum fixnum?
> check predicate float flonum?
> check predicate input-port input-port?
> check predicate pointer-vector pointer-vector?
> check predicate pointer pointer?
> (procedure (*) *) != (procedure () *)
> (procedure () *) != (procedure (*) *)
> (procedure (#!rest) . *) = (procedure (*) . *)
> (procedure (*) . *) = (procedure (#!rest) . *)
> (procedure () *) != (procedure () * *)
> (procedure () * *) != (procedure () *)
> ../chicken scrutiny-tests.scm -output-file a.c -verbose -include-path ..
> -scrutinize -ignore-repository -types ../types.db -verbose
> clang a.c -o a.o -c  -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H
> -DC_ENABLE_PTABLES -Os -fomit-frame-pointer -I..
> -I"/home/mario/local/chicken-4.8.0rc3-clang/include/chicken"
> rm a.c
> clang a.o -o a.out -L.. -L"/home/mario/local/chicken-4.8.0rc3-clang/lib"
> -Wl,-R"/home/mario/local/chicken-4.8.0rc3-clang/lib" -lchicken -lm -ldl
> rm a.o
> --- scrutiny.expected   2012-08-31 02:00:02.000000000 -0300
> +++ scrutiny.out        2012-09-06 21:30:51.000000000 -0300
> @@ -97,3 +97,17 @@
>    (scrutiny-tests.scm:136) in procedure call to `+', expected argument
> #2 of type `number', but was given an argument of type `symbol'
>
>  Warning: redefinition of standard binding: car
> \ No newline at end of file
> +In file included from a.c:11:
> +../chicken.h:2292:1: warning: control may reach end of non-void function
> [-Wreturn-type]
> +}
> +^
> +../chicken.h:2299:1: warning: control may reach end of non-void function
> [-Wreturn-type]
> +}
> +^
> +../chicken.h:2336:1: warning: control may reach end of non-void function
> [-Wreturn-type]
> +}
> +^
> +../chicken.h:2344:1: warning: control may reach end of non-void function
> [-Wreturn-type]
> +}
> +^
> +4 warnings generated.
> make[1]: *** [check] Error 1
> make[1]: Leaving directory `/home/mario/src/chicken-4.8.0rc3'
> make: *** [check] Error 2
> }}}

New description:

 Not a serious problem.  clang generates some warnings that are not in the
 expected output files.

 Warnings like:

 {{{
 ../chicken.h:2292:1: warning: control may reach end of non-void function
 [-Wreturn-type]
 }
 ^
 ../chicken.h:2299:1: warning: control may reach end of non-void function
 [-Wreturn-type]
 }
 ^
 ../chicken.h:2336:1: warning: control may reach end of non-void function
 [-Wreturn-type]
 }
 ^
 ../chicken.h:2344:1: warning: control may reach end of non-void function
 [-Wreturn-type]
 }
 ^
 4 warnings generated.
 }}}

--

-- 
Ticket URL: <http://bugs.call-cc.org/ticket/917#comment:1>
Chicken Scheme <http://www.call-with-current-continuation.org/>
Chicken Scheme is a compiler for the Scheme programming language.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]