[m-rev.] for review: [CTGC] ... strange error??

Nancy Nancy.Mazur at cs.kuleuven.ac.be
Mon Jun 12 22:48:26 AEST 2006


Hi,

before committing I did a cvs update, and came upon a compilation error 
that I can't explain. The error occurs even on a clean cvs checkout (so 
without my uncommitted changes). Is it an error that only I am getting 
with my mmc-installation, or why is this error there?

Here is the error message (in transform_hlds.table_gen.err):

table_gen.m:450: In clause for `table_gen_transform_proc(in, in, in, in, 
out,
table_gen.m:450:   in, out, in, out, in, out, di, uo)':
table_gen.m:450:   warning: unification of `EvalMethod' and
table_gen.m:450:   (parse_tree.prog_data).eval_minimal cannot succeed
table_gen.m:450:   `EvalMethod' has instantiatedness
table_gen.m:450:   `bound(((parse_tree.prog_data).eval_loop_check))'.
table_gen.m:450: In clause for `table_gen_transform_proc(in, in, in, in, 
out,
table_gen.m:450:   in, out, in, out, in, out, di, uo)':
table_gen.m:450:   warning: unification of `EvalMethod' and
table_gen.m:450:   (parse_tree.prog_data).eval_minimal cannot succeed
table_gen.m:450:   `EvalMethod' has instantiatedness
table_gen.m:450:   `bound(((parse_tree.prog_data).eval_memo))'.
table_gen.m:455: Warning: the condition of this if-then-else cannot fail.


and here are the relevant bits of code:

         ( EvalMethod = eval_loop_check
         ; EvalMethod = eval_memo
         ; EvalMethod = eval_minimal(_)
         ),
         CallStrictness = Attributes ^ table_attr_strictness,
         Statistics = Attributes ^ table_attr_statistics,
         MaybeSizeLimit = Attributes ^ table_attr_size_limit,
         (
             CallStrictness = all_strict,
             MaybeSpecMethod = all_same(arg_value)
         ;
             CallStrictness = all_fast_loose,
             MaybeSpecMethod = all_same(arg_addr)
         ;
             CallStrictness = specified(ArgMethods),
             MaybeSpecMethod = specified(ArgMethods)
         ),
	** LINE 450 NEXT **
         ( EvalMethod = eval_minimal(_) ->
             expect(unify(MaybeSizeLimit, no), this_file,
                 "eval_minimal with size limit"),
             expect(unify(MaybeSpecMethod, all_same(arg_value)), this_file,
                 "eval_minimal without all_strict")
         ;
             true
         )

I don't think there is anything wrong with this code, which is why I 
have the feeling that it has something to do with my installation of mmc 
(= 0.13.0-beta-2006-05-07, Linux mara 2.6.15-23-amd64-generic, compiled 
with EXTRA_CFLAGS=-O0)

Anybody any hints?

Julien Fischer wrote:
> On Thu, 8 Jun 2006, Nancy Mazur wrote:
> 
>> Hi Julian,
>>
>> here is the new diff for the code for generating the optimised versions and
>> printing/parsing/using the structure_reuse pragmas. I've taken your suggestions
>> into account:
>> 	* structure_reuse.split.m renamed to structure_reuse.versions.m
>> 	* part of the processing of structure_reuse pragmas is postponed
>> 	until the actual structure reuse analysis. This involves a change
>> 	in the structure reuse information recorded for each procedure.
>> 	* idem for the structure_sharing pragmas.
> 
> idem?

I meant "same" ;-)

>> 	* the structure_reuse pragma does not keep track anymore of the
>> 	names of the optimised procedures.
>>
>> Can you tell me if it is okay to commit these changes?
>>
> 
> Go ahead (provided it bootchecks)
> 

Thanks,
Nancy

Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm

--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list