Opened 10 years ago

Last modified 9 years ago

#917 closed defect

scrutiny test breaks with clang — at Initial Version

Reported by: Mario Domenech Goulart Owned by:
Priority: minor Milestone:
Component: unknown Version: 4.8.x
Keywords: scrutiny tests clang Cc:
Estimated difficulty:

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

Change History (0)

Note: See TracTickets for help on using tickets.