A forever-loop in patsopt?

20 views
Skip to first unread message

Barry Schwartz

unread,
Oct 24, 2015, 6:20:53 PM10/24/15
to ats-lan...@googlegroups.com
I am experiencing what looks like it could be a forever-loop in
patsopt.

It’s in my Sorts Mill Core Library, in the
‘forever-loop-in-patsopt/report1’ branch:
https://bitbucket.org/sortsmill/sortsmill-core/commits/394c61cc9835770bc7a514525e64cf3d59937e13

To build it (given the prerequisites) run something like ‘autogen.sh;
./configure --with-ats; make check V=1’ and see if patsopt gets stuck
during the make check. I’ve marked in tests/test_ivect_ats.dats
(‘forever loop in patsopt’) where the code that seems to result in a
hang-up is.

I’ve tried both ATS2-0.2.3 and the ATS2-0.2.4 Git sources from
SourceForge. (Haven’t tried ATS2-github.)

Hongwei Xi

unread,
Oct 24, 2015, 9:14:46 PM10/24/15
to ats-lan...@googlegroups.com
Got the following error when trying to build:

make: *** No rule to make target `inc/sortsmill/core/copy_with_strides_macros__.h', needed by `check'.  Stop.



--
You received this message because you are subscribed to the Google Groups "ats-lang-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ats-lang-user...@googlegroups.com.
To post to this group, send email to ats-lan...@googlegroups.com.
Visit this group at http://groups.google.com/group/ats-lang-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/ats-lang-users/20151024222046.GA6205%40crud.

gmhwxi

unread,
Oct 24, 2015, 9:23:38 PM10/24/15
to ats-lang-users

Also, could you use 'patsopt --debug' to compile the suspicious file
and report what you see on the stdout/stderr?


On Saturday, October 24, 2015 at 9:14:46 PM UTC-4, gmhwxi wrote:
Got the following error when trying to build:

make: *** No rule to make target `inc/sortsmill/core/copy_with_strides_macros__.h', needed by `check'.  Stop.

On Sat, Oct 24, 2015 at 6:20 PM, Barry Schwartz <chem...> wrote:
I am experiencing what looks like it could be a forever-loop in
patsopt.

It’s in my Sorts Mill Core Library, in the
‘forever-loop-in-patsopt/report1’ branch:
https://bitbucket.org/sortsmill/sortsmill-core/commits/394c61cc9835770bc7a514525e64cf3d59937e13

To build it (given the prerequisites) run something like ‘autogen.sh;
./configure --with-ats; make check V=1’ and see if patsopt gets stuck
during the make check. I’ve marked in tests/test_ivect_ats.dats
(‘forever loop in patsopt’) where the code that seems to result in a
hang-up is.

I’ve tried both ATS2-0.2.3 and the ATS2-0.2.4 Git sources from
SourceForge. (Haven’t tried ATS2-github.)

--
You received this message because you are subscribed to the Google Groups "ats-lang-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ats-lang-users+unsubscribe@googlegroups.com.
To post to this group, send email to ats-lang-users@googlegroups.com.

Barry Schwartz

unread,
Oct 24, 2015, 9:29:00 PM10/24/15
to ats-lan...@googlegroups.com
Hongwei Xi <gmh...@gmail.com> skribis:
> Subject: Re: A forever-loop in patsopt?
> From: Hongwei Xi <gmh...@gmail.com>
> Reply-To: ats-lan...@googlegroups.com
> Date: Sat, 24 Oct 2015 21:14:45 -0400
> To: ats-lan...@googlegroups.com
>
> Got the following error when trying to build:
>
> make: *** No rule to make target
> `inc/sortsmill/core/copy_with_strides_macros__.h', needed by `check'. Stop

Hmm. I forget what problems a person can run into, even though I try
my hardest to avoid them despite the great complication of it all.

One does need to have GNU Make version at least 4.0.

Barry Schwartz

unread,
Oct 24, 2015, 9:41:55 PM10/24/15
to ats-lan...@googlegroups.com
gmhwxi <gmh...@gmail.com> skribis:
> Subject: Re: A forever-loop in patsopt?
> From: gmhwxi <gmh...@gmail.com>
> Reply-To: ats-lan...@googlegroups.com
> Date: Sat, 24 Oct 2015 18:23:37 -0700 (PDT)
> To: ats-lang-users <ats-lan...@googlegroups.com>
>
>
> Also, could you use 'patsopt --debug' to compile the suspicious file
> and report what you see on the stdout/stderr?

Okay, I’ll get to it sometime later and within the next few days, not
just now.

I can also make a dist-package of the thing if that is necessary to
get it working. It passes ‘make distcheck’, or at least I fix it to do
so whenever it doesn’t.

Sometimes ‘make clean’ then ‘make’ fixes problems. I do really
offensive and tricky GNU make stuff, with the goal of avoiding things
(such as autopoint and intltool) that I find to be even more
offensive. :)

gmhwxi

unread,
Oct 24, 2015, 10:03:39 PM10/24/15
to ats-lang-users
I ran patsopt on test_ivect_ats.dats and was able to
finish (seemingly) successfully. It produced a file of C code
consisting 160K lines (including comments).

You must have made extensive (or excessive) use of templates :)

Barry Schwartz

unread,
Oct 24, 2015, 10:26:59 PM10/24/15
to ats-lan...@googlegroups.com
gmhwxi <gmh...@gmail.com> skribis:
> I ran patsopt on test_ivect_ats.dats and was able to
> finish (seemingly) successfully. It produced a file of C code
> consisting 160K lines (including comments).
>
> You must have made extensive (or excessive) use of templates :)

I was jumping through hoops trying to make use of some C macros I
wrote but have decided writing a native implementation in ATS2 would
be more instructive and less likely to run into such problems. So I
have started that.

The C macros were written before I started using ATS for this
stuff. Such macros are not copacetic with ATS templates; the two
methods of doing generic data structures do not mesh well. :(

Reply all
Reply to author
Forward
0 new messages