Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ghc-language-c for openSUSE:Factory checked in at 2023-01-18 13:10:02 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-language-c (Old) and /work/SRC/openSUSE:Factory/.ghc-language-c.new.32243 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-language-c" Wed Jan 18 13:10:02 2023 rev:7 rq:1059079 version:0.9.2 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-language-c/ghc-language-c.changes 2022-08-01 21:30:15.485632218 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-language-c.new.32243/ghc-language-c.changes 2023-01-18 13:10:20.088651675 +0100 @@ -1,0 +2,8 @@ +Tue Jan 10 13:52:16 UTC 2023 - Peter Simons <[email protected]> + +- Update language-c to version 0.9.2. + ## 0.9.2 + + - Add support for 128 bit builtin integer types + +------------------------------------------------------------------- Old: ---- language-c-0.9.1.tar.gz New: ---- language-c-0.9.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-language-c.spec ++++++ --- /var/tmp/diff_new_pack.NukwVi/_old 2023-01-18 13:10:20.600654710 +0100 +++ /var/tmp/diff_new_pack.NukwVi/_new 2023-01-18 13:10:20.604654733 +0100 @@ -1,7 +1,7 @@ # # spec file for package ghc-language-c # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,7 +19,7 @@ %global pkg_name language-c %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.9.1 +Version: 0.9.2 Release: 0 Summary: Analysis and generation of C code License: BSD-3-Clause ++++++ language-c-0.9.1.tar.gz -> language-c-0.9.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/language-c-0.9.1/ChangeLog new/language-c-0.9.2/ChangeLog --- old/language-c-0.9.1/ChangeLog 2022-04-06 11:27:18.000000000 +0200 +++ new/language-c-0.9.2/ChangeLog 2023-01-10 14:47:01.000000000 +0100 @@ -2,6 +2,10 @@ ## WIP +## 0.9.2 + +- Add support for 128 bit builtin integer types + ## 0.9.1 - Support parsing an empty list of clobbers after a colon in `asm` statements diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/language-c-0.9.1/language-c.cabal new/language-c-0.9.2/language-c.cabal --- old/language-c-0.9.1/language-c.cabal 2022-04-06 11:27:18.000000000 +0200 +++ new/language-c-0.9.2/language-c.cabal 2023-01-10 14:47:01.000000000 +0100 @@ -1,5 +1,5 @@ Name: language-c -Version: 0.9.1 +Version: 0.9.2 Cabal-Version: >= 1.10 Build-Type: Simple License: BSD3 @@ -16,7 +16,7 @@ It features a complete, well tested parser and pretty printer for all of C99 and a large set of C11 and clang/GNU extensions. Category: Language -Tested-With: GHC == 8.0.*, GHC == 8.2.*, GHC == 8.4.*, GHC == 8.6.*, GHC == 8.8.*, GHC == 8.10.* +Tested-With: GHC == 8.4.*, GHC == 8.6.*, GHC == 8.8.*, GHC == 8.10.*, GHC == 9.0.*, GHC == 9.2.* Extra-Source-Files: AUTHORS AUTHORS.c2hs ChangeLog README src/Language/C/Parser/Lexer.x diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/language-c-0.9.1/src/Language/C/Parser/Lexer.x new/language-c-0.9.2/src/Language/C/Parser/Lexer.x --- old/language-c-0.9.1/src/Language/C/Parser/Lexer.x 2022-04-06 11:27:18.000000000 +0200 +++ new/language-c-0.9.2/src/Language/C/Parser/Lexer.x 2023-01-10 14:47:01.000000000 +0100 @@ -292,7 +292,7 @@ generic _Generic, goto, if, inline @__, int, -int128 __int128, +__int128 __int128_t, long, noreturn _Noreturn, nullable _Nullable __nullable, @@ -303,6 +303,7 @@ struct, switch, typedef, typeof @__, thread __thread _Thread_local +(CTokUInt128) __uint128 __uint128_t, union, unsigned, void, @@ -324,12 +325,21 @@ (CTokGnuC GnuCTyCompat) __builtin_types_compatible_p (flip CTokClangC ClangBuiltinConvertVector) __builtin_convertvector -} --- Tokens: _Alignas _Alignof __alignof alignof __alignof__ __asm asm __asm__ _Atomic auto break _Bool case char __const const __const__ continue _Complex __complex__ default do double else enum extern float for _Generic goto if __inline inline __inline__ int __int128 long _Noreturn _Nullable __nullable _Nonnull __nonnull register __restrict restrict __restrict__ return short __signed signed __signed__ sizeof static _Static_assert struct switch typedef __typeof typeof __typeof__ __thread _Thread_local union unsigned void __volatile volatile __volatile__ while __label__ _Float32 _Float32x _Float64 _Float64x _Float128 __float128 _Float128x __attribute __attribute__ __extension__ __real __real__ __imag __imag__ __builtin_va_arg __builtin_offsetof __builtin_types_compatible_p __builtin_convertvector + +-- Tokens: _Alignas _Alignof __alignof alignof __alignof__ __asm asm __asm__ _Atomic auto break _Bool case char __const const __const__ continue _Complex __complex__ default do double else enum extern float for _Generic goto if __inline inline __inline__ int __int128 __int128_t long _Noreturn _Nullable __nullable _Nonnull __nonnull register __restrict restrict __restrict__ return short __signed signed __signed__ sizeof static _Static_assert struct switch typedef __typeof typeof __typeof__ __thread _Thread_local __uint128 __uint128_t union unsigned void __volatile volatile __volatile__ while __label__ _Float32 _Float32x _Float64 _Float64x _Float128 __float128 _Float128x __attribute __attribute__ __extension__ __real __real__ __imag __imag__ __builtin_va_arg __builtin_offsetof __builtin_types_compatible_p __builtin_convertvector idkwtok ('_' : 'A' : 'l' : 'i' : 'g' : 'n' : 'a' : 's' : []) = tok 8 CTokAlignas idkwtok ('_' : 'A' : 'l' : 'i' : 'g' : 'n' : 'o' : 'f' : []) = tok 8 CTokAlignof idkwtok ('_' : 'A' : 't' : 'o' : 'm' : 'i' : 'c' : []) = tok 7 CTokAtomic idkwtok ('_' : 'B' : 'o' : 'o' : 'l' : []) = tok 5 CTokBool idkwtok ('_' : 'C' : 'o' : 'm' : 'p' : 'l' : 'e' : 'x' : []) = tok 8 CTokComplex +#ifdef IEC_60559_TYPES_EXT +idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '1' : '2' : '8' : []) = tok 9 (CTokFloatN 128 False) +idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '1' : '2' : '8' : 'x' : []) = tok 10 (CTokFloatN 128 True) +idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '3' : '2' : []) = tok 8 (CTokFloatN 32 False) +idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '3' : '2' : 'x' : []) = tok 9 (CTokFloatN 32 True) +idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '6' : '4' : []) = tok 8 (CTokFloatN 64 False) +idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '6' : '4' : 'x' : []) = tok 9 (CTokFloatN 64 True) +#endif idkwtok ('_' : 'G' : 'e' : 'n' : 'e' : 'r' : 'i' : 'c' : []) = tok 8 CTokGeneric idkwtok ('_' : 'N' : 'o' : 'n' : 'n' : 'u' : 'l' : 'l' : []) = tok 8 CTokNonnull idkwtok ('_' : 'N' : 'o' : 'r' : 'e' : 't' : 'u' : 'r' : 'n' : []) = tok 9 CTokNoreturn @@ -356,7 +366,6 @@ idkwtok ('_' : '_' : 'c' : 'o' : 'n' : 's' : 't' : []) = tok 7 CTokConst idkwtok ('c' : 'o' : 'n' : 's' : 't' : []) = tok 5 CTokConst idkwtok ('_' : '_' : 'c' : 'o' : 'n' : 's' : 't' : '_' : '_' : []) = tok 9 CTokConst -idkwtok ('_' : '_' : 'c' : 'o' : 'n' : 's' : 't' : 'a' : 'n' : 't' : []) = tok 10 CTokConst idkwtok ('c' : 'o' : 'n' : 't' : 'i' : 'n' : 'u' : 'e' : []) = tok 8 CTokContinue idkwtok ('d' : 'e' : 'f' : 'a' : 'u' : 'l' : 't' : []) = tok 7 CTokDefault idkwtok ('d' : 'o' : []) = tok 2 CTokDo @@ -377,6 +386,7 @@ idkwtok ('_' : '_' : 'i' : 'n' : 'l' : 'i' : 'n' : 'e' : '_' : '_' : []) = tok 10 CTokInline idkwtok ('i' : 'n' : 't' : []) = tok 3 CTokInt idkwtok ('_' : '_' : 'i' : 'n' : 't' : '1' : '2' : '8' : []) = tok 8 CTokInt128 +idkwtok ('_' : '_' : 'i' : 'n' : 't' : '1' : '2' : '8' : '_' : 't' : []) = tok 10 CTokInt128 idkwtok ('_' : '_' : 'l' : 'a' : 'b' : 'e' : 'l' : '_' : '_' : []) = tok 9 CTokLabel idkwtok ('l' : 'o' : 'n' : 'g' : []) = tok 4 CTokLong idkwtok ('_' : '_' : 'n' : 'o' : 'n' : 'n' : 'u' : 'l' : 'l' : []) = tok 9 CTokNonnull @@ -401,6 +411,8 @@ idkwtok ('_' : '_' : 't' : 'y' : 'p' : 'e' : 'o' : 'f' : []) = tok 8 CTokTypeof idkwtok ('t' : 'y' : 'p' : 'e' : 'o' : 'f' : []) = tok 6 CTokTypeof idkwtok ('_' : '_' : 't' : 'y' : 'p' : 'e' : 'o' : 'f' : '_' : '_' : []) = tok 10 CTokTypeof +idkwtok ('_' : '_' : 'u' : 'i' : 'n' : 't' : '1' : '2' : '8' : []) = tok 9 (CTokUInt128) +idkwtok ('_' : '_' : 'u' : 'i' : 'n' : 't' : '1' : '2' : '8' : '_' : 't' : []) = tok 11 (CTokUInt128) idkwtok ('u' : 'n' : 'i' : 'o' : 'n' : []) = tok 5 CTokUnion idkwtok ('u' : 'n' : 's' : 'i' : 'g' : 'n' : 'e' : 'd' : []) = tok 8 CTokUnsigned idkwtok ('v' : 'o' : 'i' : 'd' : []) = tok 4 CTokVoid @@ -408,14 +420,7 @@ idkwtok ('v' : 'o' : 'l' : 'a' : 't' : 'i' : 'l' : 'e' : []) = tok 8 CTokVolatile idkwtok ('_' : '_' : 'v' : 'o' : 'l' : 'a' : 't' : 'i' : 'l' : 'e' : '_' : '_' : []) = tok 12 CTokVolatile idkwtok ('w' : 'h' : 'i' : 'l' : 'e' : []) = tok 5 CTokWhile -#ifdef IEC_60559_TYPES_EXT -idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '3' : '2' : []) = tok 8 (CTokFloatN 32 False) -idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '3' : '2' : 'x' : []) = tok 9 (CTokFloatN 32 True) -idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '6' : '4' : []) = tok 8 (CTokFloatN 64 False) -idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '6' : '4' : 'x' : []) = tok 9 (CTokFloatN 64 True) -idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '1' : '2' : '8' : []) = tok 9 (CTokFloatN 128 False) -idkwtok ('_' : 'F' : 'l' : 'o' : 'a' : 't' : '1' : '2' : '8' : 'x' : []) = tok 10 (CTokFloatN 128 True) -#endif + -- For OpenCL tokens idkwtok ('_' : '_' : 'k' : 'e' : 'r' : 'n' : 'e' : 'l' : []) = tok 8 CTokClKernel idkwtok ('_' : '_' : 'r' : 'e' : 'a' : 'd' : '_' : 'o' : 'n' : 'l' : 'y' : []) = tok 11 CTokClRdOnly diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/language-c-0.9.1/src/Language/C/Parser/Parser.y new/language-c-0.9.2/src/Language/C/Parser/Parser.y --- old/language-c-0.9.1/src/Language/C/Parser/Parser.y 2022-04-06 11:27:18.000000000 +0200 +++ new/language-c-0.9.2/src/Language/C/Parser/Parser.y 2023-01-10 14:47:01.000000000 +0100 @@ -215,6 +215,7 @@ inline { CTokInline _ } int { CTokInt _ } "__int128" { CTokInt128 _ } +"__int128_t" { CTokInt128 _ } long { CTokLong _ } "__label__" { CTokLabel _ } "_Noreturn" { CTokNoreturn _ } @@ -234,6 +235,8 @@ typeof { CTokTypeof _ } "__thread" { CTokThread _ } union { CTokUnion _ } +"__uint128" { CTokUInt128 _ } +"__uint128_t" { CTokUInt128 _ } unsigned { CTokUnsigned _ } void { CTokVoid _ } volatile { CTokVolatile _ } @@ -892,6 +895,7 @@ | "_Bool" {% withNodeInfo $1 $ CBoolType } | "_Complex" {% withNodeInfo $1 $ CComplexType } | "__int128" {% withNodeInfo $1 $ CInt128Type } + | "__uint128" {% withNodeInfo $1 $ CUInt128Type } | "_Float32" {% withNodeInfo $1 $ (CFloatNType 32 False) } | "_Float32x" {% withNodeInfo $1 $ (CFloatNType 32 True) } | "_Float64" {% withNodeInfo $1 $ (CFloatNType 64 False) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/language-c-0.9.1/src/Language/C/Parser/Tokens.hs new/language-c-0.9.2/src/Language/C/Parser/Tokens.hs --- old/language-c-0.9.1/src/Language/C/Parser/Tokens.hs 2022-04-06 11:27:18.000000000 +0200 +++ new/language-c-0.9.2/src/Language/C/Parser/Tokens.hs 2023-01-10 14:47:01.000000000 +0100 @@ -102,6 +102,7 @@ -- `__inline__') | CTokInt !PosLength -- `int' | CTokInt128 !PosLength -- `__int128` + -- (or `__int128_t`) | CTokLong !PosLength -- `long' | CTokLabel !PosLength -- `__label__ | CTokNoreturn !PosLength -- `_Noreturn' @@ -124,6 +125,8 @@ | CTokTypedef !PosLength -- `typedef' | CTokTypeof !PosLength -- `typeof' | CTokThread !PosLength -- `__thread' + | CTokUInt128 !PosLength -- `__uint128` + -- (or `__uint128_t`) | CTokUnion !PosLength -- `union' | CTokUnsigned !PosLength -- `unsigned' | CTokVoid !PosLength -- `void' @@ -257,6 +260,7 @@ posLenOfTok (CTokTypedef pos ) = pos posLenOfTok (CTokTypeof pos ) = pos posLenOfTok (CTokThread pos ) = pos +posLenOfTok (CTokUInt128 pos ) = pos posLenOfTok (CTokUnion pos ) = pos posLenOfTok (CTokUnsigned pos ) = pos posLenOfTok (CTokVoid pos ) = pos @@ -370,6 +374,7 @@ showsPrec _ (CTokTypedef _ ) = showString "typedef" showsPrec _ (CTokTypeof _ ) = showString "typeof" showsPrec _ (CTokThread _ ) = showString "_Thread_local" + showsPrec _ (CTokUInt128 _ ) = showString "__uint128" showsPrec _ (CTokUnion _ ) = showString "union" showsPrec _ (CTokUnsigned _ ) = showString "unsigned" showsPrec _ (CTokVoid _ ) = showString "void" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/language-c-0.9.1/src/Language/C/Pretty.hs new/language-c-0.9.2/src/Language/C/Pretty.hs --- old/language-c-0.9.1/src/Language/C/Pretty.hs 2022-04-06 11:27:18.000000000 +0200 +++ new/language-c-0.9.2/src/Language/C/Pretty.hs 2023-01-10 14:47:01.000000000 +0100 @@ -249,13 +249,14 @@ pretty (CLongType _) = text "long" pretty (CFloatType _) = text "float" pretty (CFloatNType n x _) = text "_Float" <> text (show n) <> - (if x then text "x" else empty) + (if x then text "x" else empty) pretty (CDoubleType _) = text "double" pretty (CSignedType _) = text "signed" pretty (CUnsigType _) = text "unsigned" pretty (CBoolType _) = text "_Bool" pretty (CComplexType _) = text "_Complex" pretty (CInt128Type _) = text "__int128" + pretty (CUInt128Type _) = text "__uint128" pretty (CSUType union _) = pretty union pretty (CEnumType enum _) = pretty enum pretty (CTypeDef ident _) = identP ident diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/language-c-0.9.1/src/Language/C/Syntax/AST.hs new/language-c-0.9.2/src/Language/C/Syntax/AST.hs --- old/language-c-0.9.1/src/Language/C/Syntax/AST.hs 2022-04-06 11:27:18.000000000 +0200 +++ new/language-c-0.9.2/src/Language/C/Syntax/AST.hs 2023-01-10 14:47:01.000000000 +0100 @@ -468,6 +468,7 @@ | CBoolType a | CComplexType a | CInt128Type a + | CUInt128Type a | CFloatNType Int Bool a -- ^ IEC 60227: width (32,64,128), extended flag | CSUType (CStructureUnion a) a -- ^ Struct or Union specifier | CEnumType (CEnumeration a) a -- ^ Enumeration specifier
