diff --git a/libs/crypt/picrypt.cpp b/libs/crypt/picrypt.cpp index 1d15160a..f80c8daf 100644 --- a/libs/crypt/picrypt.cpp +++ b/libs/crypt/picrypt.cpp @@ -152,7 +152,7 @@ PIByteArray PICrypt::hash(const PIString & secret) { #else PICRYPT_DISABLED_WARNING #endif - return hash; + return hash; } @@ -165,12 +165,17 @@ PIByteArray PICrypt::hash(const PIByteArray & data) { #else PICRYPT_DISABLED_WARNING #endif - return hash; + return hash; } size_t PICrypt::sizeHash() { +#ifdef PIP_CRYPT return crypto_generichash_BYTES; +#else + PICRYPT_DISABLED_WARNING +#endif + return 0; } @@ -246,7 +251,7 @@ void PICrypt::generateSignKeys(PIByteArray & public_key, PIByteArray & secret_ke crypto_sign_keypair(public_key.data(), secret_key.data()); #else PICRYPT_DISABLED_WARNING - #endif +#endif } @@ -258,7 +263,7 @@ void PICrypt::generateSignKeys(PIByteArray & public_key, PIByteArray & secret_ke crypto_sign_seed_keypair(public_key.data(), secret_key.data(), hash(seed).data()); #else PICRYPT_DISABLED_WARNING - #endif +#endif } @@ -294,8 +299,8 @@ bool PICrypt::verifySign(const PIByteArray & data, const PIByteArray & signature return (crypto_sign_verify_detached(signature.data(), data.data(), data.size(), public_key.data()) == 0); #else PICRYPT_DISABLED_WARNING - return false; #endif + return false; } diff --git a/libs/main/code/picodeparser.cpp b/libs/main/code/picodeparser.cpp index 9e7271d0..3ce63515 100644 --- a/libs/main/code/picodeparser.cpp +++ b/libs/main/code/picodeparser.cpp @@ -513,6 +513,14 @@ PICodeParser::Typedef PICodeParser::parseTypedef(PIString fc) { } +void removeAssignment(PIString & s) { + if (s.size() <= 2) return; + int ei = s.find('='); + if (ei < 0) return; + s.remove(ei, s.size_s() - ei); + s.trim(); +} + bool PICodeParser::parseMember(Entity * parent, PIString & fc) { static const PIString s_operator = PIStringAscii("operator"); static const PIString s_ss = PIStringAscii(" "); @@ -611,12 +619,15 @@ bool PICodeParser::parseMember(Entity * parent, PIString & fc) { parent->functions << me; } else { if (fc.endsWith(';')) fc.cutRight(1); + //piCout << "member" << fc; if (fc.startsWith(s_using) || !(fc.contains(' ') || fc.contains('\t') || fc.contains('\n'))) return true; int bits = extractMemberBits(fc); tl = fc.split(','); //piCout << "member" << fc << tl; //piCout << "member after eb" << fc << ", bits =" << bits; if (tl.isEmpty()) return true; + piForeach (PIString & v, tl) + removeAssignment(v); bool vn = true; ctemp = tl.front().trim(); PIString meta_t; @@ -654,6 +665,7 @@ bool PICodeParser::parseMember(Entity * parent, PIString & fc) { type.trim(); normalizeEntityNamespace(type); tl[0] = ctemp.trim(); + //piCout << "vars" << tl; piForeachC (PIString & v, tl) { crepl.clear(); @@ -678,7 +690,7 @@ bool PICodeParser::parseMember(Entity * parent, PIString & fc) { me.dims << cdim; } //PICout(PICoutManipulators::AddAll) << "var" << me.type << me.name << me.bits; - //piCout << "var" << v; + //piCout << "var" << v << me.type << me.name << me.bits; parent->members << me; } }