Previous day | Jump to hour: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | Next day

Seconds: Show Hide | Joins: Show Hide | View raw
Font: Serif Sans-Serif Monospace | Size: Small Medium Large

Click in the nick column to highlight everything a person has said.
The Logo icon identifies that the person is a core developer (has commit access).

Notice: Only Gecko based browsers prior to FF4 support the multipart/mixed "server push" method used by this log reader to auto-update. Since you do not appear to use such a browser, this page will simply show the current log, and not automatically update.

#rockbox log for 2021-08-04

00:23:18 Join advcomp2019__ [0] (~advcomp20@user/advcomp2019)
00:27:04***No seen item changed, no save performed.
00:27:10 Quit advcomp2019_ (Ping timeout: 272 seconds)
02:00
02:27:06***Saving seen data "./dancer.seen"
02:46:58 Join ZincAlloy [0] (~Adium@ip5f5abcae.dynamic.kabel-deutschland.de)
04:00
04:09:29 Join ZincAlloy1 [0] (~Adium@2a02:8108:943f:d824:811d:9e5b:3bd7:ef92)
04:11:34 Quit ZincAlloy (Ping timeout: 256 seconds)
04:27:07***Saving seen data "./dancer.seen"
05:00
05:10:56 Quit akaWolf (Ping timeout: 258 seconds)
05:26:01 Join akaWolf [0] (~akaWolf@akawolf.org)
06:00
06:27:09***Saving seen data "./dancer.seen"
07:00
07:35:57_bilgusI think I spent around 3 minutes changing config to get the arm cc to work with coverity and then around 2 hours of waiting for full compiles to verify it worked
07:36:43_bilgusI need to get my rig put back together :/
07:47:29_bilgusUp to 14 builds per week, with a maximum of 2 build per day, for projects with 500K to 1 million lines of code
08:00
08:13:46speachywe've over 1M, but maybe not any one individual build
08:15:49speachy200 new defects, 47 fixed. ugh. different target maybe?
08:16:05speachyyep, this time with SDL
08:23:13speachyany objections if we tell coverity to just ignore the SDL games?
08:25:11speachydone. and fixed the path to doom too.
08:27:11***No seen item changed, no save performed.
08:39:44DEBUGEOF from server (Connection reset by peer) (snapshot: netstuff.c line 545)
08:39:44***Cleanup
08:39:44***Cleanup
08:39:44***No seen item changed, no save performed.
08:39:44***Exit
08:39:44***Started Dancer V4.16
08:39:44***Connected to irc.libera.chat on port 6667
08:39:44***Logfile for #rockbox started
08:39:46Mode"rb-logbot :+i" by rb-logbot
08:39:52***Server message 501: 'rb-logbot :Unknown MODE flag'
08:39:53 Join rb-logbot [0] (~rockbox@stuffed.shaftnet.org)
08:39:53 Join akaWolf [0] (~akaWolf@akawolf.org)
08:39:53 Join ZincAlloy1 [0] (~Adium@2a02:8108:943f:d824:811d:9e5b:3bd7:ef92)
08:39:53 Join advcomp2019__ [0] (~advcomp20@user/advcomp2019)
08:39:53 Join danwellby [0] (~danwellby@88.97.8.245)
08:39:53 Join Romster [0] (~romster@user/romster)
08:39:53 Join _bilgus [0] (~bilgus@162.154.213.134)
08:39:53 Join edhelas [0] (9d94237298@v2202101139504140605.quicksrv.de)
08:39:53 Join ddevault [0] (znc@sourcehut/staff/ddevault)
08:39:53 Join hook54321 [0] (sid149355@user/hook54321)
08:39:53 Join Arsen [0] (~arsen@managarm/dev/Arsen)
08:39:53 Join ufdm [0] (~ufdm@c-73-164-63-214.hsd1.mn.comcast.net)
08:39:53 Join +speachy [0] (~speachy@rockbox/developer/speachy)
08:39:53 Join kirvesAxe [0] (~kirvesaxe@user/kirvesaxe)
08:39:53 Join yang-idl1 [0] (~yang@199.189.205.50)
08:39:53 Join jschwart [0] (~quassel@2001:985:2c6e:0:b00b:32ff:fe28:5567)
08:39:53 Join Natch [0] (~natch@c-e070e255.014-297-73746f25.bbcust.telenor.se)
08:39:53 Join j-r [0] (~j-r@p20030006215aee45404207fffefd0a65.dip0.t-ipconnect.de)
08:39:53 Join blbro[m] [0] (~blbrostra@2001:470:69fc:105::8f7)
08:39:53 Join kadoban [0] (~kadoban@user/kadoban)
08:39:53 Join michaelni [0] (~michael@213-47-68-29.cable.dynamic.surfer.at)
08:39:53 Join F3l1x_10m [0] (~Al3x_10m@user/f3l1x-10m/x-3393542)
08:39:53 Join munkis [0] (~mendel_mu@ool-ae2cb218.dyn.optonline.net)
08:39:53 Join skipwich [0] (~skipwich@user/skipwich)
08:39:53 Join JanC [0] (~janc@user/janc)
08:39:53 Join rando25892 [0] (~sthk@user/rando25892)
08:39:53 Join f1refly [0] (~f1refly@p2e50bd38.dip0.t-ipconnect.de)
08:39:53 Join bertrik [0] (~bertrik@revspace/participant/bertrik)
08:39:53 Join olspookishmagus [0] (~pookie@snf-137798.vm.okeanos.grnet.gr)
08:39:53 Join gsora [0] (~gsora@140.238.174.213)
08:39:53 Join XDjackieXD [0] (~jackie@banana-new.kilobyte22.de)
08:39:53 Join Guest9931 [0] (~leachim6@neptune.cosmicforge.org)
08:39:53 Join rb-bluebot [0] (~rb-bluebo@rockbox/bot/utility)
08:39:53 Join rasher [0] (~rasher@user/rasher)
08:39:53 Join funman [0] (~fun@chui-pas.net)
08:39:53 Join ParkerR [0] (~ParkerR@znc.withg.org)
08:39:53 Join Rondom [0] (~rondom@user/rondom)
08:39:53 Join vup [0] (~~~~@46.101.193.235)
08:39:53 Join Xeha [0] (~Xeha@dynamic-82-220-88-142.ftth.solnet.ch)
08:39:53 Join yosafbridge [0] (~yosafbrid@static.38.6.217.95.clients.your-server.de)
08:39:53 Join ats [0] (~ats@cartman.offog.org)
08:39:53 Join SammysHP [0] (~SammysHP@faol.sammyshp.de)
08:39:53 Join bluebrother [0] (~dom@55d4dc16.access.ecotel.net)
08:39:53 Join rudi_s [0] (~simon@user/rudi-s/x-7673890)
08:39:53 Join Retr0id [0] (~Retr0id@user/retr0id)
08:39:53 Join GeekShad1w [0] (~antoine@82-64-164-139.subs.proxad.net)
08:39:53 Join rogeliodh [0] (~rogeliodh@rogeliodh.dev)
08:39:53 Join Galois [0] (djao@efnet.math.uwaterloo.ca)
08:39:53 Join yang [0] (~yang@user/yang)
08:39:53 Join Riviera [0] (Riviera@user/riviera)
08:39:53 Join braewoods [0] (~braewoods@user/braewoods)
08:39:53 Join user890104 [0] (~Venci@freemyipod/user890104)
08:39:53 Join scorche` [0] (~scorche@184-98-25-134.phnx.qwest.net)
08:39:53 Join tchan [0] (~tchan@c-98-206-141-238.hsd1.il.comcast.net)
08:39:53 Join wolfshappen_ [0] (~waff@irc.furworks.de)
08:39:53 Join Topy44 [0] (LT1wL2hrRT@bellatrix.uberspace.de)
08:39:53 Join __builtin [0] (~quassel@rockbox/developer/builtin)
08:39:53 Join markun [0] (~markun@178-84-100-63.dynamic.upc.nl)
08:39:53 Join dys [0] (~dys@user/dys)
08:39:53 Join amiconn [0] (jens@p200300ea874bea00305e95fffec66ff3.dip0.t-ipconnect.de)
08:39:53 Join pixelma [0] (marianne@p200300ea874bea00305e95fffec66ff3.dip0.t-ipconnect.de)
08:39:53 Join jbgg [0] (~jbgg@95.179.159.229)
08:39:53 Join benjaoming [0] (~benjaomin@37.139.19.237)
08:39:53 Join Ckat [0] (~Ckat@xn--z7x.xn--6frz82g)
08:39:53 Join wisperwind [0] (~quassel@user/wisperwind)
08:39:53 Join Piece_Maker [0] (~Piece_Mak@cpc95746-bolt17-2-0-cust360.10-3.cable.virginm.net)
08:39:53 Join reductum [0] (~reductum@2603-8000-b400-8764-dea6-32ff-fe16-a622.res6.spectrum.com)
08:39:53 Join pablocastellanos [0] (~pidgin@user/pablocastellanos)
08:39:53 Join Maxdamantus [0] (~Maxdamant@user/maxdamantus)
08:39:53 Join TorC [0] (~Tor@fsf/member/TorC)
08:39:53 Join CasBot [0] (~matrixbot@connolly.tech)
08:39:53 Join toruvinn [0] (~toruvinn@77-255-90-179.adsl.inetia.pl)
08:39:53 Join emacsomancer [0] (~emacsoman@136.60.128.68)
08:39:53 Join spork [0] (topic@31-151-2-135.dynamic.upc.nl)
08:39:53 Join tomato [0] (~tomato@user/tomato)
08:39:53 Join gevaerts [0] (~fg@user/gevaerts)
08:43:28 Join massiveH [0] (~massiveH@ool-18e4e82f.dyn.optonline.net)
09:00
09:07:36_bilgusoh we are prob fighting each other :)
09:14:37_bilgusthats silly to use descent parsing and not give a way to reorder
09:17:27_bilguswell they did remove and place at the end
09:23:57speachyhttps://git.rockbox.org/cgit/rockbox.git/tree/apps/plugins/test_codec.c#n341
09:24:31speachyshould that be *data2_16++ instead?
09:25:55_bilgusno
09:25:57speachyno, I guess it's correct. but
09:26:15_bilgusthat would make it the same as the one below
09:26:28speachyconfusing code construct.
09:26:59speachymarked it as a false positive
09:27:12_bilgusI saw some stuff in the bug list that I can't grok
09:28:19_bilgusI don't know if its a bug or not gonna have to find someone smarter to decide if we can ignore it :P
09:28:50speachybut back to the mpegplayer; it dates to the archos days, and is full of horrid horrid hacks and convolution. it's also the only user of some of the more esoteric plugin API stuff.
09:29:29speachyI have a hard time seeing how anyone would choose to convert video to mpeg1 and play it back on these tiny screens when compared to the ubitiquous smartphone now.
09:33:40_bilgusI see no reason to keep it
09:37:59*speachy rubs his hands together and cackles.
09:38:43_bilgusso I guess it takes the defect density of the ignored components and applies them towards the calc using the valid component line count?
09:38:50_bilgusdefect density 2.19
09:38:54_bilguslol
09:38:55edhelas_bilgus time to add H264/HEVC support then :p ?
09:39:24_bilguspatches welcome? :p
09:39:25speachyedhelas: on couple-hundred-mhz ARMv4t? :)
09:39:56edhelas:D
09:53:03speachyso.. g#3650 :D
09:53:05rb-bluebotGerrit review #3650 at https://gerrit.rockbox.org/r/c/rockbox/+/3650 : RFC: Get rid of mpegplayer plugin by Solomon Peachy
09:53:39edhelasThat's a lot of red
09:54:22speachy21KLOC removed
09:58:33rb-bluebotBuild Server message: New build round started. Revision 37bfcab23f, 303 builds, 9 clients.
10:00
10:01:33_bilgusWow
10:04:23speachymost of that is libmpeg2
10:04:43speachyor at least 50%
10:06:22_bilgusFor future reference you have to add the cross compilers to coverity 'cov-configure −−comptype gcc −−compiler arm-elf-eabi-gcc −−template' & 'cov-configure −−comptype gcc −−compiler mipsel-rockbox-linux-gnu-gcc −−template'
10:07:00_bilgusit appears it shares them but it also keeps them in the build directory
10:07:23_bilgusalso arm has cached building I think I had to remove that
10:08:52gevaertsI'd say it might make sense sense to ask on the forums first. People use all sorts of things that don't seem to make sense
10:09:52speachyI'm sure there's _someone_ out there using it. just like there were still someones using archos builds.
10:10:17gevaertsWell, I'd expect mpegplayer to be more common than archos builds
10:11:43rb-bluebotBuild Server message: Build round completed after 790 seconds.
10:11:46rb-bluebotBuild Server message: Revision 37bfcab23f result: All green
10:12:21speachyyep
10:14:00gevaertsMost recent topic about it on the forums is from 2019. There was one newer one, but that turned out to be spam :)
10:20:29 Quit massiveH (Quit: Leaving)
10:36:04speachy_bilgus: I think we should separate the actual codecs from rockbox-specific stuff (eg the metadata parsers)
10:36:55_bilgusyeah more granular
10:37:12 Join johnb2 [0] (~johnb2@p5b3af9ba.dip0.t-ipconnect.de)
10:39:46***Saving seen data "./dancer.seen"
10:44:46 Join advcomp2019_ [0] (~advcomp20@user/advcomp2019)
10:48:37 Quit advcomp2019__ (Ping timeout: 250 seconds)
10:56:27rb-bluebotBuild Server message: New build round started. Revision c522917644, 303 builds, 9 clients.
10:56:45speachyit's only showing 229 defects in the non-ignored stuff now.
10:57:14_bilgusmetadata .*/rockbox/lib/rbcodec/metadata/.* No 7,464 10.05
10:57:23_bilguslol
10:57:38_bilgus10 defects per 1000 lines
10:58:09speachynow that's what I'd expect
10:58:17_bilgusi'll need to un ignore doom for builtin to look at it
11:00
11:05:12speachyamachronic: Is g#3612 in submittable state? would be good to get those fixes in
11:05:16rb-bluebotGerrit review #3612 at https://gerrit.rockbox.org/r/c/rockbox/+/3612 : Document intentional fallthroughs + fix harmless unintended ones by Aidan MacDonald
11:11:43rb-bluebotBuild Server message: Build round completed after 917 seconds.
11:11:45rb-bluebotBuild Server message: Revision c522917644 result: All green
11:13:21 Quit tchan (Ping timeout: 258 seconds)
11:14:01 Join tchan [0] (~tchan@c-98-206-141-238.hsd1.il.comcast.net)
12:00
12:07:16_bilguslooks like 60% of the doom bugs are returning -1 on error and later using it as an index
12:07:45_bilgusill try to knock them out this eve
12:23:28speachyit's preferable to try and update to a newer upstream snapshot first
12:23:55speachy... we don't want to diverge from upstream any more than necessary
12:37:45 Join cockroach [0] (~blattodea@user/cockroach)
12:39:49***Saving seen data "./dancer.seen"
12:43:22bluebrotheroh, Rockbox on coverity? Nice.
12:43:51*bluebrother requests access
12:44:52speachybluebrother: done
12:45:00bluebrotherthanks
12:45:59braewoodsspeachy: why do they always seem to consider switch fallthrough as an error? that can be a feature if you design for it...
12:46:38speachybecause in practice, it nearly always is an error
12:47:26braewoodsone of the legit uses it duffman's device
12:47:38braewoodsor...
12:47:43braewoodswas the name something else
12:48:07braewoodshttps://en.wikipedia.org/wiki/Duff%27s_device
12:49:53gevaertsIs that legit though?
12:50:12braewoodsat one time probably
12:50:19braewoodsmost of the time memcpy is a far better option today
12:51:26gevaertsAs I remember it, that example was provided with the comment "I don't know if this is an argument for or against" or something like that
12:52:22braewoodsit seems like a clever way to handle copying the "remainder" of a copy function
12:52:40braewoodsbefore switching to a larger block copy mechanism
12:52:56bluebrotheris that analysis running on _bilgus machine?
12:53:10braewoodsin any case i've never used duff's device
12:54:00gevaertsDuff's device also uses a somewhat counterintuitive interleaving of switch and while, which I think is actually the more special bit about it. Its use of fallthrough is kind of minor compared to that
12:55:52braewoodsit's not the kind of thing you'd use in normal C code but it might end up in low level code that needs to optimize for speed and something better doesn't exist.
12:55:59braewoodslike libc code
12:56:26braewoodsi've seen a lot of hack jobs in libc
12:56:55gevaertsI've definitely used fallthrough in code in what I would consider more "normal" ways, but these days I tend to agree that things going wrong due to missing break;s are more annoying than the gains from easy fallthrough
12:57:26braewoodsi also use goto when i need to do something not really possible any other way
12:57:28gevaerts(imagine that said in a better sentence)
12:57:58gevaertsThe difference is that you can't accidentally introduce a goto by forgetting something else
12:59:17braewoodsand it doesn't have nasty surprises like longjmp
12:59:36bluebrotherthe approach I know (and use) is to always add a comment stating /* fallthrough */ if I explicitly want one. No break and no comment? Bug.
12:59:58braewoodsi've never used longjmp aside from libraries that require it
13:00
13:00:09braewoodslongjmp is tricky when you have system resources to free
13:02:34gevaertsI once had a bit of code with horrible macros that added try, catch, and throw using longjmp. That code didn't do dynamic resource allocation which helped, but even so, I kind of want to repress the memory :)
13:03:27gevaertsI was young then and didn't know I had to be scared of certain things
13:04:06braewoodsleave that in C++ land.
13:04:15braewoods:D
13:04:39braewoodsi ended up implementing my new inflate module as a single function so i could use goto to simplify errors
13:04:49braewoodsand also benefit from code inlining
13:05:06braewoodsit's really long and one of the rare cases where i had reason to do that
13:05:41braewoodssince i can't really use longjmp in rockbox this was the next best thing
13:05:50braewoods(longjmp isn't available everywhere from what i saw)
13:06:35braewoodsi still need to do a review to make sure i didn't miss anything
13:07:11braewoodsbraewoods/rockbox/blob/inflate2/firmware/common/inflate.c">https://github.com/braewoods/rockbox/blob/inflate2/firmware/common/inflate.c
13:07:15braewoodscurrent draft
13:08:33braewoodsin theory it could also be paired with microtar to support basic compressed tarballs
13:09:06braewoodsnot that i can see a reason to
13:09:41braewoodsi do no resource allocation in inflate so i don't need to bother with freeing anything
13:09:51*gevaerts finds the code again and decides to claim it's company-confidential and he can't share it :)
13:09:58braewoodsthat's all on the caller to setup
13:10:22braewoodsit also allows them to reuse the same allocation if they need to decompress more than one stream
13:10:40braewoodsIO is entirely done through callbacks
13:10:57rb-bluebotBuild Server message: New build round started. Revision ef41cc6623, 303 builds, 9 clients.
13:11:17braewoodsmakes for a simple and clean interface
13:11:43braewoodsexpose the struct size through a constant global variable
13:11:56braewoodsso it can be allocated by a third party
13:14:07braewoodsto be honest i didn't even know it was possible to split a loop across multiple case statements
13:14:17braewoodsit's weird to see.
13:22:07rb-bluebotBuild Server message: Build round completed after 670 seconds.
13:22:09rb-bluebotBuild Server message: Revision ef41cc6623 result: All green
13:44:52 Quit Arsen (Quit: Quit.)
13:45:12 Join Arsen [0] (~arsen@managarm/dev/Arsen)
13:52:21 Quit johnb2 (Ping timeout: 250 seconds)
14:00
14:26:54 Join bilgus_ph [0] (~bilgus_ph@172.58.203.30)
14:28:15bilgus_phBluebrother yeah I ran those builds on my laptop my rig is still in a box even if I had a place to set it up
14:29:08bilgus_phCoverity recognized /* fall through */ but it doesn't recognize while () ;;
14:29:23bluebrotherwould it make sense to use github actions for this?
14:29:41bluebrotheroh, I saw a while () ;; getting flagged earlier :)
14:31:17bilgus_phYou mean to submit builds automatically?
14:32:35bilgus_phCoverity also fails at seeing through a ternary statement too
14:34:26bluebrotheryeah, kinda. So it isn't tied to someones gear.
14:34:55bluebrotherand then it can get triggered automatically like once per day.
14:39:02speachyI don't like that while () ;; thing; always preferred to use {} instead
14:39:02speachyI can tie it into the server's nightly cron/etc builds.
14:39:38bluebrotheralso an option :)
14:39:51***Saving seen data "./dancer.seen"
14:40:31bluebrotherI did play around with gh actions like half a year back so that came into mind. But having it on the nightly builds is less external dependencies
14:40:49bilgus_phThat's probably the best bet but it makes builds take a lot longer
14:41:14speachylonger?
14:41:29bilgus_phIt says they have a Travis ci hook but iirc that's no longer free
14:41:36 Quit yang (Changing host)
14:41:36 Join yang [0] (~yang@fsf/member/yang)
14:42:37bilgus_phYeah it does special processing on the build
14:42:37bertrikI used to use travis for arduino projects and java projects, but something broke
14:44:14speachyspeaking of servers, the last of the "new" parts arrived and passed the initial smoke test.
14:45:03speachy(and coincidentally, one of the other servers in the rack let the magic smoke out last night)
14:56:21 Join amachronic [0] (~amachroni@user/amachronic)
14:58:37 Quit bilgus_ph (Quit: Connection closed)
14:59:48rb-bluebotBuild Server message: New build round started. Revision 005c414e5f, 303 builds, 9 clients.
15:00
15:07:11amachronicspeachy: that's 3612 merged... i think 2048 was the only genuine fallthrough bug I found.
15:07:37speachyamachronic: awesome, thank you
15:10:24rb-bluebotBuild Server message: Build round completed after 636 seconds.
15:10:27rb-bluebotBuild Server message: Revision 005c414e5f result: All green
15:10:29rb-bluebotBuild Server message: New build round started. Revision bdd9c8dfc8, 303 builds, 9 clients.
15:21:41rb-bluebotBuild Server message: Build round completed after 673 seconds.
15:21:44rb-bluebotBuild Server message: Revision bdd9c8dfc8 result: All green
15:21:46rb-bluebotBuild Server message: New build round started. Revision 429a7e2c0a, 303 builds, 9 clients.
15:32:55rb-bluebotBuild Server message: Build round completed after 669 seconds.
15:32:57rb-bluebotBuild Server message: Revision 429a7e2c0a result: All green
15:49:43 Quit amachronic (Quit: amachronic)
16:00
16:39:55***Saving seen data "./dancer.seen"
17:00
17:02:06speachyso the new server hardware survived smoke testing in its final configuration (huzzah), which means it's time to work out when to take things offline for the motherboard swap.
17:02:38speachyshould take under an hour.
17:15:20 Quit j-r (Read error: Connection reset by peer)
17:15:36 Join j-r [0] (~j-r@p20030006215aee45404207fffefd0a65.dip0.t-ipconnect.de)
17:18:37 Join Moriar [0] (~moriar@107-200-193-159.lightspeed.stlsmo.sbcglobal.net)
18:00
18:09:45 Quit rogeliodh (Quit: The Lounge - https://thelounge.chat)
18:10:31 Join rogeliodh [0] (~rogeliodh@rogeliodh.dev)
18:39:59***Saving seen data "./dancer.seen"
19:00
19:02:47 Join dconrad [0] (~dconrad@208.38.228.17)
19:45:19 Join advcomp2019__ [0] (~advcomp20@user/advcomp2019)
19:48:58 Quit advcomp2019_ (Ping timeout: 240 seconds)
20:00
20:13:03dconradah yes, 20 year old pcm code dconrad.neocities.org/assorted_files/IMG_1202.JPG">https://dconrad.neocities.org/assorted_files/IMG_1202.JPG
20:13:29dconradsimples
20:13:38_bilgusspeachy do it as you see fit :)
20:34:27_bilgusalso what do you consider upstream?
20:34:35_bilgusre DOOM
20:37:38speachyprboom, apparently
20:38:35speachybut our sources have likely diverged heavily
20:39:17 Quit ZincAlloy1 (Quit: Leaving.)
20:40:01***Saving seen data "./dancer.seen"
20:42:58 Quit gsora (Ping timeout: 240 seconds)
20:45:17 Join gsora [0] (~gsora@140.238.174.213)
20:51:34_bilguswell coverity has the big bunch still blocked but next upload itll be back to 2.6 or w/e
21:00
21:05:07_bilgusour source is prboom based i'm sure __builtin knows whats up
21:43:29braewoods_bilgus: would a macro library have value for rockbox? thanks to advances in the C standard it's now possible to create alternatives for simple variadic functions that have none of their conventional drawbacks.
21:44:39braewoodsit works by using variadic macros to wrap the arguments into an array via compound literals.
21:45:02braewoodspossibly also specifying the size of it via some CPP behavioral quirks
21:45:18braewoodsit does limit the practical arguments to like 60 or so
21:45:20braewoodsthough
21:45:52braewoodsbut for something simple where you are literally working with an array of a single type
21:46:05braewoodsit works somewhat well and has better type checking than variadics ever could manage
21:46:45braewoodsthis has been possible since C99
22:00
22:02:57 Quit cockroach (Quit: leaving)
22:09:34_bilgusbraewoods, no clue? sounds more those other guys alley
22:17:14braewoods_bilgus: indeed. i'll give it a spin later on. i understand how to make it all work.
22:17:29braewoodsit's really ugly but that's well hidden in the headers.
22:17:46_bilgusthat complexity makes it a bitch later
22:17:53braewoodsit can greatly simplify some types of code.
22:18:11braewoodsi've used it to string together string concatenations one after the other
22:18:15braewoodsas an example
22:19:12braewoodsthe ugliest part is the hack for "counting" the number of arguments
22:19:31braewoodsotherwise it tends to be pretty clean
22:19:32_bilgusyeah its every combo
22:20:06braewoodsindeed, and it's capped at 63 args ish since the standard only allows macros to have up to 127 arguments
22:20:10_bilgus() - (,,,,,,bleh) Ive seen the idea elsewhere
22:20:12braewoods(minimum you can count on)
22:20:36braewoodsbut it could be useful for hiding the details of how to call this alternative to variadic functions
22:20:47braewoodssince it's technically all compile time info
22:40:03***Saving seen data "./dancer.seen"
22:53:00 Quit Moriar (Ping timeout: 258 seconds)
23:00
23:24:43 Quit dconrad (Remote host closed the connection)
23:40:26 Join dconrad [0] (~dconrad@208.38.228.17)
23:44:42 Quit dconrad (Ping timeout: 245 seconds)
23:45:29_bilgusoh hmm apparently different builds change the count on the front of coverity
23:46:07_bilgusI wonder how that will play out with it doing builds off the buildfarm
23:48:03_bilgusfixed all the defects with a bootloader build yay!

Previous day | Next day