Date: prev next · Thread: first prev next last
2018 Archives by date, by thread · List index


On 06.02.2018 03:41, Aaron M. Ucko wrote:
   Bad input <file:///<<PKGBUILDDIR>>/udkapi/com/sun/star/reflection/TypeDescriptionSearchDepth.idl>: cannot 
parse line 37: "out-of-range enum com.sun.star.reflection.TypeDescriptionSearchDepth member INFINITE value 
9223372036854775807"

udkapi/com/sun/star/reflection/TypeDescriptionSearchDepth.idl:37 is

    INFINITE = -1,

where "1" is lexed as TOK_INTEGER with sal_uInt64 value 1 in unoidl/source/sourceprovider-scanner.l (see nonZeroIntegerLiteral), and the negation is parsed as a unaryExpr in unoidl/source/sourceprovider-parser.y, converting the unoidl::detail::SourceProviderExpr::Uint(1) to unoidl::detail::SourceProviderExpr::Int(-1). Then the whole enum member declaration is parsed as enumMember (second branch, with explicit initializer expr), but shouldn't cause the out-of-range check in the unoidl::detail::SourceProviderExpr::TYPE_INT case to fire.

Odd, esp. as 9223372036854775807 is 0x7FFFFFFFFFFFFFFF, not 0xFFFFFFFFFFFFFFFF (aka -1). Smells like an issue with the compilation toolchain.

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.