--- Log opened Mon Mar 14 00:00:25 2022 07:43 -!- hg [~halosghos@user/halosghost] has joined #secp256k1 11:06 < roconnor> https://github.com/bitcoin-core/secp256k1/blob/master/src/util.h#L67 11:06 < roconnor> util.h needs an import for SECP256K1_GNUC_PREREQ to be defined? 11:09 < real_or_random> roconor: I should be in the public include file 11:09 < real_or_random> roconnor: *It 11:09 < roconnor> Right, but should it be imported in util.h? 11:09 < real_or_random> https://github.com/bitcoin-core/secp256k1/blob/master/include/secp256k1.h#L112 11:09 < roconnor> included 11:10 < real_or_random> well ok 11:10 * roconnor doesn't know how headers work 11:11 < real_or_random> if you believe in self-contained files ( https://github.com/bitcoin-core/secp256k1/issues/1039 ), then yes. otherwise ¯\_(ツ)_/¯ 11:13 < real_or_random> the reason why this works currently is that every .c compilation unit includes the public include before util.h 11:13 < real_or_random> (but yes, that's fragile) 11:15 < real_or_random> (I don't think I'm telling you anything you don't know. I assume you know how headers work, just not how they're supposed to be used. :P And yes, conventions seems to be different from project to project here.) 11:15 < roconnor> It's just especially confusing in this project. 11:15 < roconnor> $ cat src/int128_impl.c 11:15 < roconnor> #include 11:15 < roconnor> #include "int128_impl.h" 11:15 < real_or_random> right, I believe we basically have no convention :P 11:15 < roconnor> So I made this little file. 11:16 < roconnor> which seems to work well enough 11:16 < roconnor> $ clightgen -v -I include -D USE_FORCE_WIDEMUL_INT128_STRUCT src/int128_impl.c 11:16 < roconnor> executes without failing. 11:17 < roconnor> oh crap 11:17 < real_or_random> is this for your own testing? 11:17 < roconnor> I'm addressing your last comment by proving the implementation correct in VST. 11:18 < real_or_random> ook nice 11:18 < roconnor> small problem is all the functions are static so have been removed from the preprocessing step :) 11:18 < roconnor> I'll make a test function that maybe calls everything so that they exist. 11:19 < real_or_random> do you think this will be something "mature" enough to be included in the repo? even if only 3 people in the world will know the voodoo to run it 11:20 < roconnor> Well I'll plan to extend it to the mod_inverse stuff and then to the rest of the verification functionality. 11:20 < roconnor> so we will see. 11:21 < real_or_random> yeah, I was just talking with nickler about this a few minutes ago 11:21 < real_or_random> that we're aware you're working on something but we haven't really talked to you about it or we don't know what the status is 11:27 < roconnor> can you take the address of a static function? 11:27 < roconnor> I guess so. 11:39 < sipa> Yes, it'll prevent it from being (completely) inlined. 11:39 < sipa> But other than that, no problem. 13:43 -!- hg [~halosghos@user/halosghost] has quit [Ping timeout: 240 seconds] 13:57 < roconnor> okay I've proven secp256k1_u128_from_u64 correct for some definition of correct. 15:22 -!- hg [~halosghos@user/halosghost] has joined #secp256k1 17:28 -!- hg [~halosghos@user/halosghost] has quit [Quit: WeeChat 3.4] 18:42 -!- uasf_ [~uasf@2604:a880:2:d0::1bda:1001] has joined #secp256k1 18:44 -!- uasf [~uasf@2604:a880:2:d0::1bda:1001] has quit [Ping timeout: 256 seconds] 18:45 -!- windsok_ [~windsok@rarepepe.cash] has joined #secp256k1 18:47 -!- windsok [~windsok@rarepepe.cash] has quit [Ping timeout: 245 seconds] --- Log closed Tue Mar 15 00:00:26 2022