Hello community, here is the log from the commit of package colm for openSUSE:Factory checked in at 2017-09-12 19:53:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/colm (Old) and /work/SRC/openSUSE:Factory/.colm.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "colm" Tue Sep 12 19:53:57 2017 rev:3 rq:522360 version:0.13.0.5 Changes: -------- --- /work/SRC/openSUSE:Factory/colm/colm.changes 2016-12-02 16:41:46.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.colm.new/colm.changes 2017-09-12 19:54:00.334798039 +0200 @@ -1,0 +2,7 @@ +Fri Jun 9 09:23:41 UTC 2017 - jeng...@inai.de + +- Update to new upstream release 0.13.0.5 + * No changelog was provided +- Add shadow.diff + +------------------------------------------------------------------- Old: ---- colm-0.13.0.4.tar.gz New: ---- colm-0.13.0.5.tar.gz shadow.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ colm.spec ++++++ --- /var/tmp/diff_new_pack.mtKHbB/_old 2017-09-12 19:54:00.990705815 +0200 +++ /var/tmp/diff_new_pack.mtKHbB/_new 2017-09-12 19:54:00.994705252 +0200 @@ -1,7 +1,7 @@ # # spec file for package colm # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,15 +17,17 @@ Name: colm -Version: 0.13.0.4 +Version: 0.13.0.5 Release: 0 -%define lname libcolm-0_13_0_4 +%define lname libcolm-0_13_0_5 Summary: The Colm programming language -License: GPL-2.0+ -Group: Development/Languages +License: MIT +Group: Development/Languages/Other Url: http://www.colm.net/open-source/colm/ Source: http://www.colm.net/files/colm/%name-%version.tar.gz +Patch1: shadow.diff +BuildRequires: asciidoc BuildRequires: gcc-c++ BuildRequires: libtool BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -58,20 +60,31 @@ language, and to parse the structural patterns in the program that performs the analysis. +%package doc +Summary: Documentation for the Colm programming language +Group: Documentation/HTML + +%description doc +Colm is a programming language designed for the analysis and +transformation of computer languages. + +This subpackage contains the documentation in HTML format. + %prep %setup -q +%patch -P 1 -p1 %build autoreconf -fi -%configure --disable-static -make %{?_smp_mflags} +%configure --disable-static --docdir="%_docdir/%name" +make %{?_smp_mflags} V=1 %install %make_install b="%buildroot" c="$b/%_datadir/vim/site/syntax" mkdir -p "$c" -mv "$b/usr/share/doc/colm"/*.vim "$c/" +mv "$b/%_docdir/%name"/*.vim "$c/" rm -f "$b/%_libdir"/*.la %post -n %lname -p /sbin/ldconfig @@ -89,4 +102,8 @@ %_libdir/libcolm.so %_datadir/vim/ +%files doc +%defattr(-,root,root) +%_docdir/%name/ + %changelog ++++++ colm-0.13.0.4.tar.gz -> colm-0.13.0.5.tar.gz ++++++ ++++ 34376 lines of diff (skipped) ++++++ shadow.diff ++++++ --- src/bytecode.c | 15 ++++++++------- src/loadcolm.cc | 2 ++ src/parsetree.h | 4 ++++ 3 files changed, 14 insertions(+), 7 deletions(-) Index: colm-0.13.0.5/src/bytecode.c =================================================================== --- colm-0.13.0.5.orig/src/bytecode.c +++ colm-0.13.0.5/src/bytecode.c @@ -28,6 +28,7 @@ #include <string.h> #include <stdbool.h> #include <stdio.h> +#include <stdint.h> #include <stdlib.h> #include <signal.h> @@ -54,12 +55,12 @@ #if SIZEOF_LONG == 4 #define read_type( type, i ) do { \ - word_t w; \ - w = ((word_t) *instr++); \ - w |= ((word_t) *instr++) << 8; \ - w |= ((word_t) *instr++) << 16; \ - w |= ((word_t) *instr++) << 24; \ - i = (type) w; \ + word_t _w; \ + _w = ((word_t) *instr++); \ + _w |= ((word_t) *instr++) << 8; \ + _w |= ((word_t) *instr++) << 16; \ + _w |= ((word_t) *instr++) << 24; \ + i = (type)(uintptr_t) _w; \ } while(0) #define read_type_p( Type, i, p ) do { \ @@ -83,7 +84,7 @@ _w |= ((word_t) *instr++) << 40; \ _w |= ((word_t) *instr++) << 48; \ _w |= ((word_t) *instr++) << 56; \ - i = (type) _w; \ + i = (type)(uintptr_t) _w; \ } while(0) #define read_type_p( type, i, p ) do { \ Index: colm-0.13.0.5/src/loadcolm.cc =================================================================== --- colm-0.13.0.5.orig/src/loadcolm.cc +++ colm-0.13.0.5/src/loadcolm.cc @@ -2219,6 +2219,8 @@ struct LoadColm typeRef = walkReferenceTypeRef( paramVarDef.reference_type_ref() ); type = ObjectField::ParamRefType; break; + default: + throw int(43); } return addParam( paramVarDef.id().loc(), type, typeRef, id ); Index: colm-0.13.0.5/src/parsetree.h =================================================================== --- colm-0.13.0.5.orig/src/parsetree.h +++ colm-0.13.0.5/src/parsetree.h @@ -2456,6 +2456,10 @@ struct ObjectMethod generic(0) { this->paramUTs = new UniqueType*[numParams]; + if (types == NULL) { + memset(this->paramUTs, 0, sizeof(UniqueType*)*numParams ); + return; + } memcpy( this->paramUTs, types, sizeof(UniqueType*)*numParams ); }