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