View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0000113 | mercury | Bug | public | 2009-10-13 02:33 | 2009-10-17 03:56 | ||||
Reporter | juliensf | ||||||||
Assigned To | zs | ||||||||
Priority | normal | Severity | minor | Reproducibility | always | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | |||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0000113: abort during purity checking. | ||||||||
Description | The attached program results in a compiler abort. It looks as though the compiler should not be proceeding to purity checking in the presence of earlier errors. The output from mmc -V is below. | ||||||||
Additional Information | % Parsing file `bug113' and imported interfaces... % Reading file `bug113'... successful parse. % Reading interface for module `builtin.int'... successful parse. % Reading interface for module `bool.int'... successful parse. % Reading interface for module `list.int'... successful parse. % Reading interface for module `exception.int'... successful parse. % Reading interface for module `int.int'... successful parse. % Reading interface for module `string.int'... successful parse. % Reading interface for module `private_builtin.int'... successful parse. % Reading short interface for module `enum.int2'... successful parse. % Reading short interface for module `pretty_printer.int2'... successful parse. % Reading short interface for module `term.int2'... successful parse. % Reading short interface for module `io.int2'... successful parse. % Reading short interface for module `deconstruct.int2'... successful parse. % Reading short interface for module `stream.int2'... successful parse. % Reading short interface for module `type_desc.int2'... successful parse. % Reading short interface for module `univ.int2'... successful parse. % Reading short interface for module `map.int2'... successful parse. % Reading short interface for module `bitmap.int2'... successful parse. % Reading short interface for module `char.int2'... successful parse. % Reading short interface for module `maybe.int2'... successful parse. % Reading short interface for module `ops.int2'... successful parse. % Reading short interface for module `time.int2'... successful parse. % Reading short interface for module `construct.int2'... successful parse. % Reading short interface for module `rtti_implementation.int2'... successful parse. % Reading short interface for module `assoc_list.int2'... successful parse. % Reading short interface for module `set.int2'... successful parse. % Reading short interface for module `tree234.int2'... successful parse. % Reading short interface for module `pair.int2'... successful parse. % Reading short interface for module `stm_builtin.int2'... successful parse. % Reading short interface for module `store.int2'... successful parse. % Reading short interface for module `array.int2'... successful parse. % Reading short interface for module `random.int2'... successful parse. % Reading short interface for module `set_ordlist.int2'... successful parse. % Module qualifying items... bug113.m:001: In module `bug113': bug113.m:001: warning: module `list' is imported in the interface, but is not bug113.m:001: used in the interface. % done. % Expanding equivalence types... % done. % Converting parse tree to hlds... % Processing clause 1 for function `bug113.new/1'... % Processing clause 1 for function `bug113.new/2'... bug113.m:036: Error: clause for function `bug113.new'/1 bug113.m:036: without preceding `func' declaration. bug113.m:038: Error: clause for function `bug113.new'/2 bug113.m:038: without preceding `func' declaration. % done. % Writing auto-dependency file `bug113.d'... done. % Checking typeclasses... % Checking instance declaration types... % Checking typeclass instances... % Checking for cyclic classes... % Checking for missing concrete instances... % Checking functional dependencies on instances... % Checking typeclass constraints... % Checking typeclass constraints on unification predicate for type bug113.bitmap % Checking typeclass constraints on comparison predicate for type bug113.bitmap % Checking typeclass constraints on unification predicate for type bug113.foo % Checking typeclass constraints on comparison predicate for type bug113.foo % Checking typeclass constraints on function `bug113.new'/1 % Checking typeclass constraints on function `bug113.new'/2 % Checking that insts have matching types... done. % Type-checking... % Type-checking clauses... % Type-checking unification predicate for type deconstruct.maybe_arg % Inferring type of function `bug113.new'/1 % Inferring type of function `bug113.new'/2 % Type-checking predicate `list.TypeSpecOf__pred__member__[T = var(V_2)]'/2 % Type-checking predicate `list.TypeSpecOf__pred__merge__[T = var(V_2)]'/3 % Type-checking predicate `list.TypeSpecOf__pred__merge_and_remove_dups__[T = var(V_2)]'/3 % Type-checking function `list.TypeSpecOf__pred_or_func__merge_and_remove_dups__[T = var(V_2)]'/2 % Type-checking function `list.TypeSpecOf__pred_or_func__remove_adjacent_dups__[T = var(V_2)]'/1 % Type-checking predicate `list.TypeSpecOf__pred_or_func__remove_adjacent_dups__[T = var(V_2)]'/2 % Type-checking predicate `list.TypeSpecOf__pred__sort__[T = var(V_2)]'/2 % Type-checking function `list.TypeSpecOf__pred_or_func__sort__[T = var(V_2)]'/1 % Type-checking function `list.TypeSpecOf__pred_or_func__sort_and_remove_dups__[T = var(V_2)]'/1 % Type-checking predicate `list.TypeSpecOf__pred_or_func__sort_and_remove_dups__[T = var(V_2)]'/2 bug113.m:036: Inferred :- func new(T1) = T2. bug113.m:040: In clause for function `new'/2: bug113.m:040: error: undefined symbol `throw_bitmap_error/1'. bug113.m:042: In clause for function `new'/2: bug113.m:042: error: undefined symbol `initializer/1'. bug113.m:043: In clause for function `new'/2: bug113.m:043: error: undefined symbol `initialize_bitmap/3'. bug113.m:043: In clause for function `new'/2: bug113.m:043: in argument 1 of functor `initialize_bitmap/3': bug113.m:043: error: undefined symbol `allocate_bitmap/1'. bug113.m:044: In clause for function `new'/2: bug113.m:044: error: undefined symbol `clear_filler_bits/1'. % Program contains type error(s). % Purity-checking clauses... % Purity-checking unification predicate for type bug113.bitmap % Purity-checking comparison predicate for type bug113.bitmap % Purity-checking unification predicate for type bug113.foo % Purity-checking comparison predicate for type bug113.foo % Purity-checking function `bug113.new'/1 Uncaught Mercury exception: Software Error: prog_type.m: Unexpected: type_to_ctor_and_args_det: type_to_ctor_and_args failed Stack dump not available in this grade. | ||||||||
Tags | No tags attached. | ||||||||
Attached Files |
|
Issue History | |||
Date Modified | Username | Field | Change |
---|---|---|---|
2009-10-13 02:33 | juliensf | New Issue | |
2009-10-13 02:33 | juliensf | File Added: bug113.m | |
2009-10-17 00:13 | zs | Status | new => assigned |
2009-10-17 00:13 | zs | Assigned To | => zs |
2009-10-17 03:56 | zs | Note Added: 0000211 | |
2009-10-17 03:56 | zs | Status | assigned => resolved |
2009-10-17 03:56 | zs | Resolution | open => fixed |