Camelia, the Perl 6 bug

IRC log for #parrot, 2008-03-29

Parrot | source cross referenced

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:13 tetragon I've been having make test failures with Parrot from svn, some of which involve SIGBUS, some of which don't.  I killed the test suite shortly after the imcc tests (which where the ones crashing hard were), and was wondering about a starting point for tracking some of that stuff down
00:19 chromatic A backtrace would help.
00:19 tetragon So, where's the preferred pastebin?
00:19 tetragon My system traps those things
00:19 pmichaud nopaste?
00:19 purl hmmm... nopaste is at http://nopaste.snit.ch/ (ask TonyC for new channels) or http://rafb.net/paste or http://paste.husk.org/ or http://poundperl.pastebin.com/ or http://paste.scsys.co.uk/ or don't bother me while I'm eating
00:21 nopaste "tetragon" at 206.248.175.68 pasted "CrashReporter log for one SIGBUS of a few" (73 lines) at http://nopaste.snit.ch/12591
00:24 chromatic Can you run the failing program with parrot -t and correlate it to a line or two of PIR or PASM/
00:25 tetragon It's part of the test suite
00:25 tetragon I can try to determine one of the crashing bits of code
00:25 tetragon I have three other traces from today, they aren't all the same
00:32 chromatic Is this a fresh checkout?
00:33 tetragon Yes
00:33 tetragon I've identified one of the crashing tests
00:33 chromatic No previous builds in this directory?
00:33 tetragon I can redo it in another directory
00:34 tetragon Getting it to build on this system is a bit on the interesting side to begin with
00:34 chromatic Sometimes we get strange errors if we invalidate bytecode and rebuild without cleaning out already-generated bytecode.
00:35 tetragon One of the SIGBUS tests is test 32 of  t/compilers/imcc/syn/macro.t
00:36 * tetragon is waiting for another tree of parrot to finish downloading
00:36 tetragon It both failed the test in terms of output and in terms of crashing
00:36 chromatic Parrot should never crash.
00:37 chromatic That's the part that concerns me the most.
00:37 tetragon I can paste that instances prove -v output and the trace
00:39 rdice joined #parrot
00:50 tetragon SIGBUS on a copy I pulled out of svn a few minutes ago
00:55 AndyA joined #parrot
00:58 * Infinoid watches everything break with "make -j" again
00:58 Infinoid someday, I will Do Something about that
00:59 chromatic Fixing the .str generation should do it.
00:59 chromatic It's race condition city in there.
01:00 Infinoid first time around, got a missing headerfile.  second time around (this time with just "make"), it built but got a "Null PMC access in invoke" later on
01:00 Infinoid I am highly motivated at the moment, lets see if I can wrap my head around it
01:02 tetragon I identified one of the other SIGBUS-causing tests
01:02 tetragon Although, that one does mention "TODO segfaults"
01:03 Infinoid awesome.
01:04 tetragon The test even passes because it's marked TODO
01:04 Infinoid which test?
01:04 tetragon That one is t/compilers/imcc/syn/regressions.t
01:04 tetragon (Only has one test)
01:05 Infinoid segfaults here too
01:05 tetragon Right now I'm trying to find a crashing test that isn't marked TODO
01:06 Coke pmichaud: (.const sub, anon) - there are a LOT of cases where this syntax is used on a non-anon sub.
01:07 tetragon Although, I fail many cases without crashing
01:07 chromatic Coke, I've almost fixed that in IMCC.
01:08 * Coke returns, nearly human.
01:08 tetragon My build seems to be putting noops in places the test script isn't expecting any
01:12 Coke tetragon: has anyone suggested "make realclean" to you yet? any local diffs?
01:12 tetragon This is straight off of svn
01:12 chromatic We went through that, Coke.
01:14 Coke roger roger.
01:14 purl roger roger is what those silly combat-droids say in Star Wars.
01:14 Coke purl, scooby snack!
01:14 purl Rank roo, Coke!
01:15 Coke chromatic: pick a number from 1 to 10.
01:15 chromatic okay.
01:16 Coke was it 7, +- 1?
01:16 chromatic It was 4.
01:16 Coke well, there's my problem.
01:17 jjuran What, that you can't read minds?
01:18 Infinoid we need an rt# for that
01:18 Coke ah, excellent choice. thank you.
01:18 * Coke should probably do something other than random number generator for selecting an injection site.
01:18 Coke chromatic: pick a number from 1 to 10.
01:20 chromatic Okay.
01:21 Coke was it 7, +- 1?
01:21 chromatic It was 2.4
01:21 Coke yah. definitely need a better scheme. 4 would have been funnier, though.
01:21 * Coke sees what else he can rip out of parrot.
01:25 Coke pmichaud: if you just want to *invoke* the anon, you can do it by name.
01:25 tetragon One of the crashing test scripts is t/op/01-parse_ops.t
01:26 Coke can you nopaste the output of prove -v t/op/01-parse_ops.t ?
01:27 tetragon There is nothing unusual in prove's output
01:27 Coke if it's not unusual, how is it crashing?
01:27 tetragon All the tests pass
01:28 tetragon But parrot is crashing
01:28 Coke ... so it's crashing, but it's passing all tests? and prove -v shows you nothing unusual?
01:28 tetragon That's right
01:28 Coke for TODO tests, that's fine.
01:28 Coke (ish)
01:28 tetragon It's not a TODO test
01:28 Coke ok. which if the 335 tests is crashing?
01:29 Coke s/if/of
01:29 tetragon I'm not sure yet
01:29 tetragon Is each test a separate parrot process?
01:29 * Coke peeks at that file... yes.
01:29 diakopter Infinoid: http://rafb.net/p/Uqc0iZ64.html
01:30 Coke you can run them individually :
01:30 dalek r26609 | infinoid++ | trunk:
01:30 dalek : [lolcode] languages/lolcode/t/06-functionparams.t:
01:30 dalek : fix up svn metadata to pass t/distro/file_metadata.t
01:30 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26609
01:30 diakopter spooky
01:30 Infinoid damn I'm good.
01:30 tetragon Coke: Then it's either 334 or 335, going by the pause as the crash reporter gather's its data
01:30 Coke t/op/01-parse_ops_150.pasm, e.g.
01:31 Coke so, ./parrot t/op/01-parse_ops_150.pasm
01:31 Coke lemme know which one crashes.
01:31 chromatic Coke, new patch for RT #48024 submitted.
01:31 tetragon It's 335
01:32 tetragon I can paste the stack trace
01:32 Coke freaky. if I run it from the command line, it segfaults here, too, but my test harness doesn't seem to care.
01:32 chromatic Which, 334 or 335?
01:32 Coke 335
01:33 Coke 334 seems fine
01:33 tetragon Only reason I notice is that OS X pops up a stack trace whenever anything dies in an untoward manner
01:33 chromatic Hm, me too.
01:33 chromatic Interesting.
01:33 Coke hurm. it's "end\nyield".
01:33 Coke tetragon: heh. I shut that off at some point. =-)
01:34 Coke I can see why it passes, no expected output.
01:35 Coke tetragon: can you open a ticket for us to track this on?
01:35 Coke parrotbug?
01:35 purl parrotbug is mailto:parrotbug@parrotcode.org or http://svn.perl.org/parrot/​trunk/docs/submissions.pod
01:35 chromatic Ugh:
01:35 chromatic 0xb7ec987f in INS (interp=0x804f008, unit=0x8240fd8, name=0x824e410 "yield",
01:35 chromatic fmt=0x0, r=0x8240468, n=0, keyvec=0, emit=1)
01:35 chromatic at compilers/imcc/parser_util.c:749
01:35 chromatic 749             IMCC_INFO(interp)->cur_unit->instructi​ons->symregs[0]->pcc_sub->calls_a_sub
01:35 Coke basically just "./parrot t/...." segfaults. stack trace would be nice.
01:36 Coke but not entirely necessarily, since chromatic is already 1 step ahead of us...
01:37 Coke chromatic: I thankfully am ignorant enough not to know why that's as ugly as it is.
01:37 chromatic Try figuring out which one of those is an invalid pointer.
01:38 Coke I bet xcode's GUI gdb could tell you.
01:38 Coke ... if I knew how to use it.
01:38 Coke hey, tetragon...
01:38 Coke ;=)
01:38 tetragon Yes?
01:38 chromatic I think you lick the screen until the colorful candy buttons do something.
01:38 Coke chromatic: they use lsd in the phosphors.
01:39 tetragon In my experience, it's more curse the candy buttons and drop down to the terminal
01:39 Coke tetragon: just wondering if you were familiar enough with xcode to use the nice builtin debugger which would might tell us which of those structures was dead.
01:39 Coke but based on your last send, guessing no.
01:40 tetragon I can try... but I've never really dealt with any of the graphical tools other than Quartz Composer
01:40 * tetragon pulls out Instruments
01:42 tetragon Argh... it really is designed for a larger screen than my laptop has
01:45 Coke chromatic: I wonder if it might be easier for us to have this patch conversation in a branch.
01:46 nopaste "chromatic" at 63.105.17.30 pasted "Fix t/op/01-parse_ops_335.pasm segfault" (15 lines) at http://nopaste.snit.ch/12592
01:46 chromatic The deprecate_me_harder branch?
01:46 Coke BWAHAAHAHA
01:47 Coke I finally convinced gmail and feather to get the damn patch applied.
01:48 Coke but nah, this patch to remove the .FOOs can be done independently of killing the things that use them.
01:49 chromatic Some can and some can't.
01:49 chromatic The .const .Sub change needs parser support.
01:49 Coke which is not covered in your patch?
01:49 Theory joined #parrot
01:50 Coke hey, your patch removes a XXX from imcc. nice.
01:50 chromatic My second patch adds parser support.
01:50 chromatic Which is the XXX?
01:50 Coke -            /* XXX: free valp->s if already used? Sounds like a good idea, */
01:51 chromatic Ah, nice.
01:52 Coke Here's my results after running make test with your patch: -            /* XXX: free valp->s if already used? Sounds like a good idea, */
01:52 Coke er,
01:52 Coke Files=560, Tests=11071, 273 wallclock secs ( 0.80 usr  1.27 sys + 127.63 cusr 38.83 csys = 168.53 CPU)
01:52 Coke Result: FAIL
01:52 Coke Failed 12/560 test programs. 22/11071 subtests failed.
01:52 chromatic Sounds like mine.
01:52 chromatic A few other PMC constants to clean up.
01:53 skids joined #parrot
01:53 pmichaud Coke:  In PGE I don't want to invoke the .Sub immediately -- I need to store it somewhere so it can be invoked later
01:53 Coke k
01:53 chromatic pmichaud, don't worry; we saved the semantics (if not the syntax)
01:54 pmichaud I'm not tied to the syntax.  :-)   But I definitely do need the ability to grab the PMC for anonymous subs in the current impl of PGE
01:55 chromatic It'll stick around.
01:55 Coke chromatic: Ok. this looks good enough here, that I think combined with my patch, we might able to knock this out this weekend. why don't we branch so we can rip it all out and see how it looks.
01:55 chromatic Be my guest!
01:55 Coke k.
01:56 pmichaud chromatic++ Coke++
01:56 chromatic I had to patch a parser.  I don't deserve to have to create a branch.
01:56 pmichaud I need to grab some dinner... bbl
01:56 chromatic bungee-pumpking
01:56 Coke ok. but we'll make someone else merge it to trunk when we finish.
01:56 chromatic one, two, three NOT IT
01:57 Coke NOT IT!
01:57 * Coke goes back through the buffer... patrick. ha!
01:57 chromatic particle
01:57 purl mailto:jerry.gay@gmail.com
01:57 pmichaud ???
01:57 chromatic If you're not used to it now, Patrick... sheesh!
01:58 * pmichaud (totally lost)
01:58 Coke this looks right, neh:
01:58 Coke svn copy -r https://svn.perl.org/parrot/trunk https://svn.perl.org/parrot/branches/type_ids -m "Creating branch to try to remove type ids"
01:58 Coke s/try to //
01:58 pmichaud I don't think you need the -r
01:58 pmichaud oh wait, maybe you do
01:59 Coke no, you're right. -r needs a revision. like HEAD. or you can leave it off.
01:59 Coke see, good thing I checked.
01:59 chromatic Decapitate that command!
01:59 Coke ... orf with it's HEAD?
01:59 pmichaud okay, I really need dinner.  bbiaw
01:59 Coke AGIH!
01:59 Coke its! damnit.
01:59 * Coke goes to boil his fingers.
02:01 dalek r26610 | coke++ | type_ids:
02:01 dalek : Creating branch to remove type idse
02:01 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26610
02:01 chromatic idse?
02:01 chromatic bidse
02:01 chromatic spider?
02:01 purl o/` LADIES AND GENTELMEN!  Goobity coo coo goo coooooo!  Goobity coo coo goo coooooo!    Spider (he is our hero) Spider (get rid of) Spider (STEP ON SPIDER!) Spider (we love you spider)  I promise not to kill you (awwwwwwwwwwwwwwwwww) Spider (we love you spider) Spider (get rid of) Spider (must... stop) Spider (he is our hero) awwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww o/`
02:01 chromatic Huh.  I recognize that song.
02:02 Coke ... where the hell did the e come from?
02:02 * Coke checks his slide rule.
02:02 Coke the command line ended in ... type ids"e
02:02 * Coke blames tachyons.
02:05 dalek r26611 | coke++ | type_ids:
02:05 dalek : Remove IMCC support for the generated type IDs, ala: .Integer
02:05 dalek : Change .const .Sub syntax to .const 'Sub'
02:05 dalek : Courtesy chromatic++, RT #48024
02:05 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26611
02:06 chromatic hey waitaminute
02:06 chromatic commit sniper
02:10 dalek r26612 | chromatic++ | type_ids:
02:10 dalek : [src] Removed an unrelated change accidentally commited in r26611.
02:10 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26612
02:11 tetragon As for another crash on a non-TODO test, test 61 of t/pmc/namespace.t
02:11 tetragon It also doesn't cause any failures visible in prove -v output
02:11 chromatic tetragon, did my nopaste from a few minutes ago fix the previous crash for you?
02:12 tetragon Haven't tested yet, was waiting for a clean tree to copy across
02:13 Coke chromatic: sorry. :|
02:13 chromatic don't worry about it
02:13 chromatic I'm just glad I didn't have to create a branch AND patch a parser.
02:13 Coke =-)
02:13 tetragon ./parrot t/pmc/namespace_61.pir doesn't crash, to trigger it you also need to pass in -O/
02:16 Coke chromatic: I think I got the easy half.
02:17 chromatic Looks like it.
02:19 Coke Haven't heard any object really about the revision thing.
02:19 Coke should also be able to rip that out this weekend.
02:20 lathos joined #parrot
02:24 dalek r26613 | coke++ | type_ids:
02:24 dalek : Rip out the variants of the new opcode
02:24 dalek : that let you create a pmc based on an integer type.
02:24 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26613
02:27 dalek r26614 | chromatic++ | type_ids:
02:27 dalek : [t] Replaced some uses of PMC type ids with PMC names.
02:27 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26614
02:28 tetragon Test 3 of t/dynoplibs/myops.t crashes without causing any failures visible to prove
02:29 chromatic Confirmed.
02:29 chromatic Can you file bugs for these?
02:29 tetragon I'm moving the crash reports off to the desktop with mail
02:29 tetragon Right now the build testing the patch is happening
02:30 Coke chromatic: I don't see any salvaging of the current incarnation of t/op/info.t
02:31 chromatic I haven't looked yet.
02:32 Coke if you concur, feel free to rm it.
02:32 chromatic I already removed one test in t/pmc/fixedpmcarray.t
02:32 chromatic working on the Continuation tests now.
02:35 Coke the t/pmc/pmc.t test is relying on the typeof_i_p opcode which has to be defunct. once I get the ok, I can rip out those opcodes, too.
02:35 Coke (and then a whole other bunch of tests.)
02:36 dalek r26615 | chromatic++ | type_ids:
02:36 dalek : [t] Fixed two more tests which relied on type ids.
02:36 dalek : One of the FixedIntegerArray tests specifically tested an opcode which uses
02:36 dalek : type IDs, so it's gone now.
02:36 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26615
02:42 dalek r26616 | coke++ | type_ids:
02:42 dalek : Update some "new Integer" syntax that got missed.
02:42 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26616
02:42 tetragon chromatic: Patch stops the failure of test 335 of t/op/01-parse_ops.t
02:42 Coke chromatic++ # all the hard work on the type ids.
02:43 chromatic Hey, you started it.
02:43 Coke Yes, but I never could have finished it. Thanks.
02:44 Coke Alright. I'm going to go sleep, and hope the Architect fairy answers my question by the time I have the computer to myself for a few hours again.
02:44 tetragon What does the option '-O/' mean to parrot?
02:44 chromatic I think it's an error, but I'm not sure.
02:45 tetragon It's being passed into it in t/pmc/namespace.t
02:45 dalek r26617 | chromatic++ | type_ids:
02:45 dalek : [t] Removed PMC type ids from remaining failing tests.
02:45 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26617
02:45 tetragon Test 61 crashes with -O/, and works without
02:46 chromatic What's passing in -O/?
02:47 tetragon Something, I'm trying to track it down
02:48 dalek r26618 | coke++ | type_ids:
02:48 dalek : [docs] minor cleanups to the book elminating some dead syntax.
02:48 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26618
02:59 Andy joined #parrot
02:59 tetragon I see why parrot is being passed -O/
03:00 tetragon The optimization flag is being determined based upon the filename
03:00 tetragon I keep my source trees in /opt
03:03 tetragon That results in it pulling the / out of the test script's path instead of the intended behaviour of pulling it out of the filename (of which a few are of the form required for this)
03:04 tetragon (See lines 773 - 786 of lib/Parrot/Test.pm for details)
03:09 Infinoid wow, that sounds like a nice hard-to-find bug
03:10 Infinoid tetragon++
03:11 tetragon And for final confirmation, I'm doing a build in /tmp
03:24 * tetragon grumbles about having to fix the Makefiles on every tree
03:29 Infinoid huh.  make -j2 apparently worked as of r21613
03:30 cout joined #parrot
03:49 Infinoid ...and r26309 broke it (that was the pdd17pmc branch merge)
03:49 chromatic Bleh.
03:49 chromatic Try debugging something in *that*.
03:50 * Infinoid starts by stripping out all the changes except for Makefile and c2str stuff
04:08 * Infinoid fails horribly
04:08 * Infinoid starts bisecting in the pdd17pmc branch history, instead
04:09 cout ~.
04:15 AndyA joined #parrot
04:20 mncharity joined #parrot
04:20 mncharity left #parrot
04:29 Theory joined #parrot
04:30 peepsalot joined #parrot
04:54 Student joined #parrot
05:02 tetragon joined #parrot
05:04 drbean left #parrot
05:05 Infinoid and (of course) the change that broke "make -j2" is buried within a set of 400 revs that don't build
05:22 chromatic Most of those should have built.
05:22 chromatic Most of them built for me anyway.
06:14 tetragon So, when running make test from /tmp (not /opt), I now get only seven crashes, and they're all on tests marked TODO
06:40 Tene Hm.  I'm getting a 'make' failure that I wasn't getting earlier.
06:40 * Tene fresh-checkout.
07:15 Tene So, @ARGS doesn't work in rakudo?
07:26 Tene Looks like rakudo's IO needs a lot of work.
07:26 Tene Maybe tomorrow...
07:59 dalek r26619 | chromatic++ | type_ids:
07:59 dalek : [Pheme] Replaced PMC type constants with PMC names.
07:59 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26619
08:01 iblechbot joined #parrot
08:42 wknight8111 joined #parrot
09:50 barney joined #parrot
11:17 dalek r26620 | bernhard++ | trunk:
11:17 dalek : [HQ9+]
11:17 dalek : Reimplement with PCT.
11:17 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26620
11:18 dalek r26621 | bernhard++ | trunk:
11:18 dalek : Alphabetic ordering.
11:18 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26621
11:34 Coke seen kj?
11:34 purl kj was last seen on #parrot 22 hours and 51 minutes ago, saying: purl's not too nice today...
11:38 dalek r26622 | bernhard++ | trunk:
11:38 dalek : [HQ9+]
11:38 dalek : "use FindBin"
11:38 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26622
12:36 rdice joined #parrot
12:49 AndyA joined #parrot
13:29 kid51 joined #parrot
13:33 kid51 Am experiencing problems with 'svn up languages/hq9plus'
13:35 kid51 purl seen barney?
13:35 purl barney was last seen on #parrot 2 days and 17 hours ago, saying: frooze Firefox, by running Javascript HQ9+  [Mar 26 13:55:22 2008]
14:30 PerlJam kid51: What OS are you on?
14:31 PerlJam I'm having problems as well but I thought it might be because I'm using cygwin.
14:32 PerlJam (or because I'm using git)
14:50 ilbot2 joined #parrot
14:50 cognominal pmichaud, when do you think you will have namespace problems solved?
14:51 cognominal for example,  Perl6Str generated on a module code are not recogniized
14:52 pmichaud cognominal: I don't know how long it will take.  Some may depend on changes to Parrot.
14:52 pmichaud although I don't understand the example
14:52 cognominal synoymy between pmc Hash and Perl6 hash is also a bummer
14:53 pmichaud oh, I think I may be able to resolve the pmc Hash and Perl6 Hash fairly quickly
14:53 kid51 PerlJam:  no, I think it's a checkin error
14:53 cognominal for modules, pct generates    Px = new "Perl6Str"   that are not found because of the namespace of the module
14:54 pmichaud that shouldn't make a difference
14:54 pmichaud class names aren't tied to namespaces
14:54 pmichaud (in Parrot)
14:54 cognominal a module is not a class
14:54 pmichaud what exactly is "not found" then?
14:54 PerlJam kid51: I originally suspected cygwin or git because one time I saw the dir as "hq9plus" and another time I saw it as "HQ9plus".  I thought there might be case-folding issues.
14:55 cognominal the Perl6Str class
14:55 pmichaud that's my point...   new "Perl6Str"  doesn't depend on namespaces
14:55 kid51 PerlJam:  Yes, that's the issue, but it's OS-independent
14:55 kid51 I experience it both darwin and linux
14:56 PerlJam ah. good to know :)
14:56 * PerlJam stops suspecting his local tools
14:56 cognominal in rakudo, package are non existent and module are half baked.
14:56 pmichaud cognominal: perhaps I need a code example.  Or maybe just file a ticket.  :-)
14:59 cognominal yes I will simplify my code and file a tiket
15:04 cognominal hum. it seems to work in simple examples
15:06 dalek r26623 | pmichaud++ | trunk:
15:06 dalek : [examples]:
15:06 dalek : * Update ambs' benchmark to use Perl6Regex and Perl6Grammar instead of
15:06 dalek :   the deprecated pgc tool (RT#48028).
15:06 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26623
15:50 cognominal pmichaud, the code  pmc.ops :96-97 seems redundant:  pmc_type() is called twice with the same args  for no apparent reason. And it seems to be a pure function
15:50 cognominal not that this has any relationship with my problem
15:52 pmichaud I'm not too familiar with the PMC code, but upon first look it appears that you're correct.  Probably worth a ticket to parrotbug
15:52 pmichaud or ask chromatic about it :-)
15:52 Theory joined #parrot
16:03 Theory joined #parrot
16:08 tetragon joined #parrot
16:14 pmichaud Coke: ping
16:17 iblechbot joined #parrot
16:17 Tene pmichaud: No scope found for PAST::Var '@ARGS'
16:18 dalek r26624 | pmichaud++ | trunk:
16:18 dalek : [tcl]: RT#48028 changes
16:18 dalek : * Convert grammar to use Perl6Regex syntax instead of obsolete P6Regex.
16:18 dalek : * Change pgc to Perl6Grammar.
16:18 dalek : * 'make test' produces same results as before.
16:18 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26624
16:18 ewilhelm seen darbelo?
16:18 purl darbelo was last seen on #parrot 2 days and 17 hours ago, saying: some of that could be adapted, and maybe categorized by feature.  [Mar 26 16:40:10 2008]
16:30 paco joined #parrot
16:39 kid51 joined #parrot
16:39 dalek r26625 | jkeenan++ | ports:
16:39 dalek : Create config step class auto::ports to identify location of Macports.  Move
16:39 dalek : _handle_darwin_for_macports() out of config/auto/readline.pm and
16:39 dalek : config/auto/gmp.pm and into lib/Parrot/Configure/Step/Methods.pm.  Add
16:39 dalek : auto::ports to lib/Parrot/Configure/Step/List.pm.  Add one placeholder test
16:39 dalek : file.
16:39 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26625
17:35 mmcleric joined #parrot
17:40 kid51 joined #parrot
17:53 guru joined #parrot
17:54 IllvilJa joined #parrot
17:55 guru joined #parrot
18:05 kid51 purl seen kid51
18:05 purl kid51 was last seen on #parrot right now, saying: purl seen kid51
18:05 kid51 purl readline?
18:05 purl somebody said readline was the default/dumb app
18:06 kid51 purl seen guru
18:06 purl guru was last seen on #parrot 75 days and 17 hours ago, saying: Who lat Naomi Klein in here?  [Jan 13 17:16:43 2008]
18:06 kid51 okay guru, back to #tpm
18:09 * tetragon wonders what she has to do to get a follow-up for a bug to actually appear
18:10 Infinoid RT is often slow at sending mail to the list
18:10 tetragon I sent the message a few hours ago and it's not showing up in RT
18:11 Infinoid hmm, usually email replies show up on rt.perl.org pretty quickly...
18:11 Infinoid where'd you send it?
18:12 kid51 purl configuration tests
18:12 purl kid51: excuse me?
18:12 tetragon parrotbug-followup@parrotcode.org
18:12 kid51 purl nopaste?
18:12 purl rumour has it nopaste is at http://nopaste.snit.ch/ (ask TonyC for new channels) or http://rafb.net/paste or http://paste.husk.org/ or http://poundperl.pastebin.com/ or http://paste.scsys.co.uk/ or don't bother me while I'm eating
18:13 Infinoid that's the right place.  if it had the [perl #NNNNN] tag in the subject and everything, maybe it got caught by a spam filter or something
18:13 Infinoid if you have an RT account, you can post replies directly in the web interface
18:13 tetragon It had the tag
18:14 tetragon And I don't think I have an RT account
18:14 nopaste "kid51" at 67.208.9.120 pasted "Illustrating the use of pastebots as supplement to IRC for aspiring Parroteer" (4 lines) at http://nopaste.snit.ch/12595
18:15 Infinoid hrm.  dunno what to say, other than "try again" or "wait a while"
18:16 Infinoid if its a patch you want applied, you can always bug us in here :)
18:16 tetragon It's not a patch
18:16 tetragon It was a message saying that the supplied patch doesn't fix the issue
18:16 Infinoid what's the ticket id?
18:17 tetragon 52224
18:17 tetragon I think kid51 is the person I was responding to
18:17 Infinoid yep
18:18 * kid51 hears his name mentioned
18:19 kid51 Yo, tetragon, I'm sitting here in the To Reference Library with guru.  Wazzup?
18:20 Infinoid looking at the patch, I think the test might need to be flipped around... I think you only want to match if it *doesn't* have a slash
18:20 kid51 Does my patch suffice to answer your concern? http://rt.perl.org/rt3/Tic​ket/Display.html?id=52224
18:21 tetragon That proposed patch would cause parrot to always be passed '-Os' in my environment
18:22 tetragon $code_f is of the form /opt/src/perl6/svn/parrot/t/foo/test.t
18:23 kid51 Okay, so why don't you rework the patch and post it with the patch as an attachment.
18:23 * kid51 recommends (a) patches as attachments, whether to list or via GUI interface; (b) always end patch filenames in '.txt' to keep all kinds of list readers happy.
18:24 Infinoid do either of you have an example of a filename which that code was intended to parse?
18:24 tetragon I think it was for stuff like t/compilers/imcc/imcpasm/opt0.t
18:25 Infinoid ah, thanks
18:25 Infinoid perhaps m!opt([^/])!
18:26 tetragon That would trigger on :t/configure/027-option_or_data.t
18:26 kid51 Or do we want a negative lookahead?
18:26 Infinoid doesn't the current code trigger on that, too?
18:26 kid51 No.
18:26 kid51 those t/configure tests are not run by lib/Parrot/Test.pm
18:27 tetragon Would t/compilers/pge/03-optable.t trigger it?
18:27 kid51 Parrot::Test is mainly for running tests of the Parrot executable and languages built on top of it
18:27 Infinoid so, it only has an effect within a special harness?
18:27 kid51 Perhaps.  I was completely unaware of any problem until seeing your post this a.m.
18:27 Infinoid hrm
18:28 Infinoid if m!opt([^/])! isn't reasonable, maybe just do a basename() on the filename before matching
18:28 tetragon Only reason I noticed is that this little box displays every stack trace that goes by
18:28 Infinoid parrot can't control, and should ignore, whatever path leads up to its base checkout dir.
18:28 tetragon Certain test cases crash whenever parrot is called with any optimization flag that I've tried
18:29 kid51 tetragon:  Can you post an example of where the spurious flag is added?
18:29 kid51 s/post/paste/
18:31 tetragon Of where?  As in whenever I build and test parrot under /opt?
18:32 * tetragon notes that the Toronto Reference Library is a short subway trip away, and that she could head over if needed
18:32 Infinoid tetragon: I've done a checkout in my /opt/tmp/parrot, should I expect to see some "make test" failures?
18:32 tetragon Yes
18:32 Infinoid great, running it now.
18:33 tetragon Test 61 of t/pmc/namespace.t is one of the ones that silently crashes due to -O/
18:33 tetragon Test 54 fails on my system without crashing, and shows that parrot was called with -O/
18:34 Infinoid hmm.  since I'm on linux, I probably won't see test 61.  but maybe I can hack it to test the return value
18:35 kid51 tetragon:  What's the line number of Test 61?  Or its description?
18:37 * kid51 calls 'make' so he can run that test with prove -v
18:37 tetragon overriding find_method
18:37 Infinoid sadly, t/pmc/namespace.t passes for me with or without /opt
18:37 Infinoid however, I have a failure in t/pmc/sub.t that doesn't occur within /home/infinoid/parrot
18:38 kid51 tetragon:  I'm only here till approx 3:30 -- but this is guru's regular hacking hangout ;-)
18:39 tetragon kid51: I'm in my usual location of Linuxcaffe
18:39 Psyche^ joined #parrot
18:39 Infinoid lots of failures in t/compilers/imcc/imcpasm
18:39 kid51 where is Linuxcaffe?
18:40 tetragon A block south of Christie station
18:41 nopaste "kid51" at 67.208.9.120 pasted "Wonder why my negative lookahead assertion isn't compiling?" (17 lines) at http://nopaste.snit.ch/12596
18:41 kid51 which line is Christie station on?
18:41 tetragon Bloor
18:42 tetragon It's west of Yonge
18:42 kid51 Oh I think I went by there once a couple of years ago looking for wireless -- but I didn't see anybody using laptops there.
18:42 kid51 It's on the northeast corner of an intersection, IIRC.
18:42 tetragon Yes
18:42 tetragon The number of laptops out depends upon when in the week it is
18:43 tetragon During the day on weekdays it's much higher than weekends
18:43 nopaste "Infinoid" at 76.215.208.106 pasted "this fixes #52224 for me" (26 lines) at http://nopaste.snit.ch/12597
18:46 kid51 tetragon  Can you try out Infinoid's paste?
18:46 Infinoid kid51: does it look reasonable to you?  is there a good reason to allow "optN" in a directory name, rather than the filename itself?
18:47 kid51 Where N is an integer?
18:47 Infinoid where N is some argument to -O, I guess
18:47 kid51 I don't think there is a good reason -- but you know how some people want infinite flexibility (grrrr)
18:47 Infinoid to be honest, it makes me nervous to think that it's parsing the whole absolute directory path for this stuff.  we don't have any control over the directory people put a parrot checkout in
18:47 Infinoid ...and I'd really prefer we ignore that.
18:48 Ademan joined #parrot
18:49 kid51 tetragon:  Let me see if I understand this.  You were getting these spurious flags when you did a check out under the top-level /opt directory?  Is that correct?
18:49 Infinoid that's how I reproduced it
18:49 Infinoid my checkout is /opt/tmp/parrot
18:50 * kid51 wonders why anyone would do a repository checkout under /opt, as that has a special meaning in BSD land.  But stranger things have happened.
18:50 tetragon I make use of /opt/src for some source trees
18:50 Infinoid the bug will occur for any leading directory containing the string "opt"
18:50 Infinoid /home/optimus_rhyme/ would have the same problem :)
18:51 kid51 So, yeah, Infinoid.  I think your hunch is correct.  We should be working with only either (a) the file's basename or (b) the part of the path beneath the top-level Parrot directory (e.g., top of the sandbox).
18:51 Infinoid sure, path relative to the toplevel parrot directory makes sense too
18:52 Infinoid ok, great!  I'll check it in if tetragon tells me it works
18:52 kid51 Yes, if she says its cool, check it in.
18:53 kid51 It's one of those things that's so subtle that the only way we'll  *really* know it's okay is to have it fail in a smoke test.
18:53 Infinoid yeah, it will only affect a small subset of users
18:54 kid51 Infinoid:  Since your patch is better than mine, you should post it in http://rt.perl.org/rt3/Tic​ket/Display.html?id=52224 so that people know mine was superseded.
19:00 Infinoid done.  I love how RT doesn't show my patches inline, even when I follow your (very good) advice and name it with a .txt extension
19:01 kid51 Well, that advice is certainly valid for the newsreader I use.  I think it's mentioned somewhere in docs/submissions.pod as well.
19:02 Infinoid claws-mail is funky *shrug*
19:06 Infinoid I'm still getting a failure in t/pmc/sub.t.  it seems to be another instance of the same bug.
19:07 nopaste "Infinoid" at 76.215.208.106 pasted "t/pmc/sub.t failure" (15 lines) at http://nopaste.snit.ch/12598
19:09 kid51 Back to t/pmc/namespace.t
19:10 kid51 I just ran it.  Test 61 passes.  However, Test 54 is expected to fail, so it has been TODO-ed out.
19:10 kid51 So, tetragon, Test 54 is not your problem at the moment.  Just Test 61.
19:11 nopaste "tetragon" at 206.248.175.68 pasted "Test 61 of t/pmc/namespace.t" (69 lines) at http://nopaste.snit.ch/12599
19:11 tetragon Test 54 is where I saw the flags being used due to a simple failing test
19:12 tetragon Test 61 crashes hard (but passes in prove -v output) when -O/ is passed in
19:13 * Infinoid finds a second place where Parrot::Test is searching for opt(.) in an absolute pathname
19:16 darbelo joined #parrot
19:17 Infinoid tetragon: does my second diff (rt52224-use-basename-v2.diff.txt) attached to RT#52224 fix anything for you?
19:17 tetragon It works when both instances of opt(.) are handled as in Infinoid's patch
19:17 Infinoid awesome, thanks
19:19 dalek r26626 | chromatic++ | trunk:
19:19 dalek : [oo] Enabled PMC instantiation with key name and initializer.  This makes one
19:19 dalek : TODO test pass.
19:19 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26626
19:20 kid51 Infinoid:  looks good to me.  Go ahead and commit.
19:20 Infinoid (already did)
19:20 dalek r26627 | infinoid++ | trunk:
19:20 dalek : [Parrot::Test]
19:20 dalek : * parse for -O arguments in the filename, not leading directories
19:20 dalek : * This fixes RT #52224.  tetragon++  kid51++
19:20 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26627
19:22 kid51 tetragon:  I gotta go soon, vacation is ending.  But I was glad to see that you're not bashful about opening RTs :-)
19:23 kid51 tetragon:  Feel free to elaborate further on that readline/libedit/editline problem; I don't claim to understand it myself
19:23 kid51 There may be licensing issues as well as code issues.
19:23 tetragon It's a fairly simple issue
19:23 kid51 But it touches on some larger issues.
19:23 * Infinoid hasn't looked at readline/editline in probably 5 years, but remembers lots of problems
19:23 tetragon Much simpler than the readline issue I tracked down in PostgreSQL
19:26 kid51 gotta go
19:26 purl GOTTA COME.
19:27 * Infinoid goes back to staring at Makefiles
19:32 paco joined #parrot
19:43 dalek r26628 | chromatic++ | trunk:
19:43 dalek : [runtime] Changed PIR Test::Builder name to use keyed syntax.
19:44 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26628
20:03 davidfetter joined #parrot
20:16 dalek r26629 | chromatic++ | trunk:
20:16 dalek : [ops] Removed duplicate code in a couple of new opcodes (Stephane Payrard, RT
20:16 dalek : #52230).
20:16 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26629
20:43 dalek r26630 | chromatic++ | trunk:
20:43 dalek : [codingstd] Wrapped macro arguments (RT #51782).  Many of the others are
20:43 dalek : somewhat more difficult to wrap appropriately.
20:43 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26630
20:53 Limbic_Region joined #parrot
20:55 dalek r26631 | chromatic++ | trunk:
20:55 dalek : [src] Localized variables and improved formatting (Klaas-Jan Stol, RT #51894).
20:55 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26631
21:01 Limbic_Region There's something broke in languages/hq9plus - likely broke for case insensitive systems
21:01 Limbic_Region looks like languages\hq9plus\lib\Parrot\Test\HQ9plus.pm
21:02 Limbic_Region has two files with the same name (case insensitively that is)
21:10 Infinoid ah, kid51 and perljam had mentioned something broken about hq9plus earlier today, that must be it
21:11 Infinoid the two files are identical except for capitalization of "package" lines and such
21:13 Limbic_Region svn checkout fails as a result on Win32/MinGW
21:14 Limbic_Region of course Win32/Cygwin is fine
21:14 Limbic_Region but Win32/Cygwin is still broke for the missing -lcrypto in the dynalibs
21:14 Limbic_Region someone provided an, apparently unapplied, patch for that though
21:15 Infinoid RT#52150, right?
21:15 Infinoid does the patch work for you?
21:15 Limbic_Region uh, just a sec
21:15 Infinoid (I can apply it, but I can't test it)
21:16 Limbic_Region that's the right ticket
21:16 Limbic_Region I didn't try the patch since I know the manual work around
21:16 Limbic_Region give me a minute
21:21 dalek r26632 | chromatic++ | trunk:
21:21 dalek : [config] Fixed Cygwin build to include crypto libs, if detected (Reini Urban,
21:21 dalek : RT #52150).
21:21 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26632
21:21 Limbic_Region make is still running btw
21:21 Limbic_Region but apparently chromatic is confident it will fix the problem
21:24 Infinoid well, if it doesn't, then we'll fix things further
21:24 tetragon_ joined #parrot
21:25 darbelo left #parrot
21:27 Limbic_Region ok, built fine
21:27 Limbic_Region AFAICT, parrot on cygwin builds out of the box - you may need to mess with PATH to ensure <parrot_home>/blib/lib is there though
21:29 Limbic_Region actually - the hq9plus problem effects Cygwin too
21:29 * Infinoid tries to figure out which one of {Hq9plus.pm,HQ9plus.pm} to remove
21:29 Limbic_Region but the only language/ that I really care about is perl6 anyway
21:30 dalek r26633 | chromatic++ | trunk:
21:30 dalek : [config] Made configure favor make over nmake for Cygwin (Reini Urban, RT
21:30 dalek : #51898).
21:30 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26633
21:31 Limbic_Region oh, another odd thing - make perl6 doesn't work - requires perl6.exe
21:32 Limbic_Region make perl6.exe works though - which is a good thing
21:33 Infinoid remove Hq9plus.pm, and the build fails.  Remove HQ9plus.pm instead, and a few tests fail.
21:34 darbelo joined #parrot
21:35 Infinoid oh, awesome.  those tests fail either way
21:37 * Limbic_Region thinks he needs to have his thyroid checked
21:38 dalek r26634 | infinoid++ | trunk:
21:38 dalek : [hq9plus] Remove HQ9plus.pm, it was conflicting on case-insensitive filesystems.
21:38 dalek : Removing this doesn't seem to cause any additional test failures, so I think it
21:38 dalek : is safe to remove.  If not, we can reinstate it from svn history...
21:38 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26634
21:39 Infinoid im in ur languages, removn ur codes
21:40 shamu joined #parrot
21:40 Limbic_Region odd
21:41 Limbic_Region it seems that there is also languages/hq9plus and languages/HQ9plus
21:42 Infinoid hrm
21:42 Infinoid looks like barney's in the process of converting it to PCT
21:42 Limbic_Region *shrug*
21:42 Infinoid HQ9plus is the old one, hq9plus is the new one
21:43 Limbic_Region again, I don't really care about hq9plus
21:43 Infinoid well, svn needs to work, its a major annoyance when it doesn't
21:44 Infinoid strangely, languages/HQ9plus/ is the one mentioned in languages/Makefile, but languages/hq9plus/ is the one that gets a Makefile generated by Configure.pl
21:45 Infinoid if HQ9plus wasn't mentioned anywhere, I'd just rename it to HQ9plus.old and be done with it
21:45 Infinoid but I wonder if languages-test is going to barf on this, too
21:45 Limbic_Region well, I am too tired to follow along
21:45 Limbic_Region TTFN
21:45 * Limbic_Region AFK &
21:46 Infinoid seeya!
22:07 Psyche^ joined #parrot
22:09 dalek r26635 | chromatic++ | trunk:
22:09 dalek : [config] Removed circular perl6 -> perl6 target dependency from root Makefile;
22:09 dalek : this only occurred on platforms without an executable suffix.  Correspondingly,
22:09 dalek : make perl6 works on Unixy platforms and still works on Windows (though it
22:09 dalek : invokes make perl6.exe).  See RT #49766.
22:09 dalek : Cygwin may or may not like this.
22:09 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26635
22:17 OCTAGRAM joined #parrot
22:36 Coke pmichaud: pong
22:40 pmichaud Coke: I had a question earlier about the tcl grammar, but ultimately figured it out
22:42 Tene pmichaud: does @ARGS in rakudo work for you?
22:42 pmichaud it did at one time
22:42 Tene Oh, okay.
22:49 pmichaud In Perl 6 it's @*ARGS
22:49 Coke ah
22:49 Tene Oh, right.
22:49 Tene Thanks.
22:49 pmichaud see if that resolves it :-)
22:51 pmichaud there also seems to be a typo in S0
22:51 pmichaud er, S06
22:53 dalek r26636 | chromatic++ | trunk:
22:53 dalek : [JIT] Moved executable code out of jit/i386/exec_dep.h (Paul Cochrane, RT
22:53 dalek : #47289).
22:53 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26636
22:55 Tene Yes, that works fine now.  pmichaud++
23:38 dalek r26637 | chromatic++ | trunk:
23:38 dalek : [ops] Added does_i_p_pc opcode.
23:38 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26637
23:44 dalek r26638 | chromatic++ | trunk:
23:44 dalek : [Test::More] Converted more class names from string names to keyed names.
23:44 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=26638
23:48 Theory joined #parrot
23:56 lichtkind joined #parrot
23:57 lichtkind pmichaud: ping
23:58 silug joined #parrot
23:59 pmichaud lichtkind: pong
23:59 lichtkind pmichaud: great i have just 2 further questions: whos baby is NQP?; the plan for rakudo is really to use the original STD.pm?

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

Parrot | source cross referenced