Changeset 3867

Show
Ignore:
Timestamp:
09/29/07 15:15:25 (16 months ago)
Author:
pmoura
Message:

Changed handling of the encoding/1 directive by the Logtalk compiler in order to improve compatibility with YAP and SICStus Prolog. Removed from the config files the now obsolete '$lgt_set_stream_encoding'/2 predicate definition. Renamed the compiler option "supports_encoding_dir" to "encoding_directive" and changed its possible values to "unsupported", "full" (used in both Logtalk source files and compiler generated Prolog files), and "source" (used only in Logtalk source files).

Location:
trunk
Files:
30 modified

Legend:

Unmodified
Added
Removed
  • trunk/compiler/logtalk.pl

    r3865 r3867  
    42734273'$lgt_check_for_encoding_directive'((:- encoding(Encoding)), Source, Input, NewInput, [encoding(Encoding)]) :- 
    42744274    !, 
    4275     (   '$lgt_compiler_flag'(encoding_directive, true) -> 
     4275    (   \+ '$lgt_compiler_flag'(encoding_directive, unsupported) -> 
    42764276        close(Input), 
    42774277        open(Source, read, NewInput, [encoding(Encoding)]), 
     
    98139813% '$lgt_write_directives'(@stream) 
    98149814% 
    9815 % writes the directives 
     9815% writes the directives; cumbersome due to the special processing of the encoding/1 directive 
    98169816 
    98179817'$lgt_write_directives'(Stream) :- 
    98189818    '$lgt_pp_directive_'(Dir), 
    9819         write_canonical(Stream, (:- Dir)), 
     9819    (   Dir = encoding(_), '$lgt_compiler_flag'(encoding_directive, source) -> 
     9820        true 
     9821    ;   write_canonical(Stream, (:- Dir)), 
    98209822        write(Stream, '.'), 
    9821         nl(Stream), 
     9823        nl(Stream) 
     9824    ), 
    98229825    fail. 
    98239826 
  • trunk/configs/als.config

    r3865 r3867  
    228228'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    229229 
    230 '$lgt_default_flag'(encoding_directive, false). 
     230'$lgt_default_flag'(encoding_directive, unsupported). 
    231231'$lgt_default_flag'(threads, unsupported). 
    232232 
  • trunk/configs/amzi.config

    r3865 r3867  
    224224'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    225225 
    226 '$lgt_default_flag'(encoding_directive, false). 
     226'$lgt_default_flag'(encoding_directive, unsupported). 
    227227'$lgt_default_flag'(threads, unsupported). 
    228228 
  • trunk/configs/b.config

    r3865 r3867  
    177177'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    178178 
    179 '$lgt_default_flag'(encoding_directive, false). 
     179'$lgt_default_flag'(encoding_directive, unsupported). 
    180180'$lgt_default_flag'(threads, unsupported). 
    181181 
  • trunk/configs/bin.config

    r3865 r3867  
    290290'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    291291 
    292 '$lgt_default_flag'(encoding_directive, false). 
     292'$lgt_default_flag'(encoding_directive, unsupported). 
    293293'$lgt_default_flag'(threads, unsupported). 
    294294 
  • trunk/configs/ciao_aux.config

    r3865 r3867  
    264264'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    265265 
    266 '$lgt_default_flag'(encoding_directive, false). 
     266'$lgt_default_flag'(encoding_directive, unsupported). 
    267267'$lgt_default_flag'(threads, unsupported). 
    268268 
  • trunk/configs/cx.config

    r3865 r3867  
    218218'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    219219 
    220 '$lgt_default_flag'(encoding_directive, false). 
     220'$lgt_default_flag'(encoding_directive, unsupported). 
    221221'$lgt_default_flag'(threads, unsupported). 
    222222 
  • trunk/configs/eclipse.config

    r3865 r3867  
    315315'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    316316 
    317 '$lgt_default_flag'(encoding_directive, false). 
     317'$lgt_default_flag'(encoding_directive, unsupported). 
    318318'$lgt_default_flag'(threads, unsupported). 
    319319 
  • trunk/configs/eclipseiso.config

    r3865 r3867  
    221221'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    222222 
    223 '$lgt_default_flag'(encoding_directive, false). 
     223'$lgt_default_flag'(encoding_directive, unsupported). 
    224224'$lgt_default_flag'(threads, unsupported). 
    225225 
  • trunk/configs/gnu.config

    r3865 r3867  
    175175'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    176176 
    177 '$lgt_default_flag'(encoding_directive, false). 
     177'$lgt_default_flag'(encoding_directive, unsupported). 
    178178'$lgt_default_flag'(threads, unsupported). 
    179179 
  • trunk/configs/ifprolog.config

    r3865 r3867  
    195195'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    196196 
    197 '$lgt_default_flag'(encoding_directive, false). 
     197'$lgt_default_flag'(encoding_directive, unsupported). 
    198198'$lgt_default_flag'(threads, unsupported). 
    199199 
  • trunk/configs/ji.config

    r3865 r3867  
    199199'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    200200 
    201 '$lgt_default_flag'(encoding_directive, false). 
     201'$lgt_default_flag'(encoding_directive, unsupported). 
    202202'$lgt_default_flag'(threads, unsupported). 
    203203 
  • trunk/configs/k.config

    r3865 r3867  
    185185'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    186186 
    187 '$lgt_default_flag'(encoding_directive, false). 
     187'$lgt_default_flag'(encoding_directive, unsupported). 
    188188'$lgt_default_flag'(threads, unsupported). 
    189189 
  • trunk/configs/lpamac.config

    r3865 r3867  
    293293'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    294294 
    295 '$lgt_default_flag'(encoding_directive, false). 
     295'$lgt_default_flag'(encoding_directive, unsupported). 
    296296'$lgt_default_flag'(threads, unsupported). 
    297297 
  • trunk/configs/lpawin.config

    r3865 r3867  
    322322'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    323323 
    324 '$lgt_default_flag'(encoding_directive, false). 
     324'$lgt_default_flag'(encoding_directive, unsupported). 
    325325'$lgt_default_flag'(threads, unsupported). 
    326326 
  • trunk/configs/master.config

    r3865 r3867  
    244244'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    245245 
    246 '$lgt_default_flag'(encoding_directive, false). 
     246'$lgt_default_flag'(encoding_directive, unsupported). 
    247247'$lgt_default_flag'(threads, unsupported). 
    248248 
  • trunk/configs/minerva.config

    r3865 r3867  
    193193'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    194194 
    195 '$lgt_default_flag'(encoding_directive, false). 
     195'$lgt_default_flag'(encoding_directive, unsupported). 
    196196'$lgt_default_flag'(threads, unsupported). 
    197197 
  • trunk/configs/open.config

    r3865 r3867  
    295295'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    296296 
    297 '$lgt_default_flag'(encoding_directive, false). 
     297'$lgt_default_flag'(encoding_directive, unsupported). 
    298298'$lgt_default_flag'(threads, unsupported). 
    299299 
  • trunk/configs/prologII.config

    r3865 r3867  
    196196'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    197197 
    198 '$lgt_default_flag'(encoding_directive, false). 
     198'$lgt_default_flag'(encoding_directive, unsupported). 
    199199'$lgt_default_flag'(threads, unsupported). 
    200200 
  • trunk/configs/qu.config

    r3865 r3867  
    187187'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    188188 
    189 '$lgt_default_flag'(encoding_directive, false). 
     189'$lgt_default_flag'(encoding_directive, unsupported). 
    190190'$lgt_default_flag'(threads, unsupported). 
    191191 
  • trunk/configs/quintus.config

    r3865 r3867  
    242242'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    243243 
    244 '$lgt_default_flag'(encoding_directive, false). 
     244'$lgt_default_flag'(encoding_directive, unsupported). 
    245245'$lgt_default_flag'(threads, unsupported). 
    246246 
  • trunk/configs/sicstus.config

    r3865 r3867  
    196196'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    197197 
    198 '$lgt_default_flag'(encoding_directive, false). 
     198'$lgt_default_flag'(encoding_directive, unsupported). 
    199199'$lgt_default_flag'(threads, unsupported). 
    200200 
  • trunk/configs/sicstus4.config

    r3865 r3867  
    186186'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    187187 
    188 '$lgt_default_flag'(encoding_directive, false). 
     188'$lgt_default_flag'(encoding_directive, source). 
    189189'$lgt_default_flag'(threads, unsupported). 
    190190 
  • trunk/configs/swi.config

    r3865 r3867  
    201201'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    202202 
    203 '$lgt_default_flag'(encoding_directive, true). 
     203'$lgt_default_flag'(encoding_directive, full). 
    204204'$lgt_default_flag'(threads, Threads) :- 
    205205    (   current_prolog_flag(threads, true) -> 
  • trunk/configs/template.config

    r3865 r3867  
    201201'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    202202 
    203 '$lgt_default_flag'(encoding_directive, false). 
     203'$lgt_default_flag'(encoding_directive, unsupported). 
    204204'$lgt_default_flag'(threads, unsupported). 
    205205 
  • trunk/configs/xsb.config

    r3865 r3867  
    200200'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    201201 
    202 '$lgt_default_flag'(encoding_directive, false). 
     202'$lgt_default_flag'(encoding_directive, unsupported). 
    203203'$lgt_default_flag'(threads, unsupported). 
    204204 
  • trunk/configs/yap.config

    r3865 r3867  
    224224'$lgt_default_flag'(xmldir, 'xml_docs/'). 
    225225 
    226 '$lgt_default_flag'(encoding_directive, false). 
     226'$lgt_default_flag'(encoding_directive, unsupported). 
    227227'$lgt_default_flag'(threads, Threads) :- 
    228228    (   current_prolog_flag(system_options, threads) -> 
  • trunk/manuals/userman/installing.html

    r3865 r3867  
    183183<dl> 
    184184    <dt><code>encoding_directive</code></dt> 
    185         <dd>Informs Logtalk if the Prolog compiler supports the <a title="Consult reference manual" href="../refman/directives/encoding1.html"><code>encoding/1</code></a> directive. This directive is used for declaring the text encoding of source files. Possible flag values are <code>true</code> and <code>false</code>.</dd> 
     185        <dd>Informs Logtalk if the Prolog compiler supports the <a title="Consult reference manual" href="../refman/directives/encoding1.html"><code>encoding/1</code></a> directive. This directive is used for declaring the text encoding of source files. Possible flag values are <code>unsupported</code>, <code>full</code> (used in both Logtalk source files and compiler generated Prolog files), and <code>source</code> (used only in Logtalk source files).</dd> 
    186186</dl> 
    187187<dl> 
     
    217217    <div class="copyright"> 
    218218        <span>Copyright &copy; <a href="mailto:pmoura@logtalk.org">Paulo Moura</a> &mdash; <a href="http://logtalk.org">Logtalk.org</a></span><br/>  
    219         <span>Last updated on: April 14, 2007</span> 
     219        <span>Last updated on: September 15, 2007</span> 
    220220    </div> 
    221221    <div class="navbottom"> 
  • trunk/RELEASE_NOTES.txt

    r3865 r3867  
    1414 
    1515    Changed handling of the encoding/1 directive by the Logtalk compiler in  
    16     order to improve compatibility with YAP. Removed from the config files  
    17     the now obsolete '$lgt_set_stream_encoding'/2 predicate definition. 
     16    order to improve compatibility with YAP and SICStus Prolog. Removed from  
     17    the config files the now obsolete '$lgt_set_stream_encoding'/2 predicate  
     18    definition. Renamed the compiler option "supports_encoding_dir" to  
     19    "encoding_directive" and changed its possible values to "unsupported",  
     20    "full" (used in both Logtalk source files and compiler generated Prolog  
     21    files), and "source" (used only in Logtalk source files). 
    1822 
    1923    Renamed compiler option "underscore_vars" to "underscore_variables". 
    2024    Renamed compiler option "supports_break_predicate" to "break_predicate". 
    21     Renamed compiler option "supports_encoding_dir" to "encoding_directive". 
    2225 
    2326    Added a workaround for the lack of built-in support for character  
  • trunk/UPGRADING.txt

    r3866 r3867  
    167167 
    168168Logtalk version 2.30.6 renamed the compiler flags "supports_break_predicate",  
    169 "supports_encoding_dir", and "underscore_vars". Older config files are not 
    170 compatible with this new Logtalk version. 
     169"supports_encoding_dir", and "underscore_vars" to, respectively,  
     170"break_predicate", "encoding_directive", and "underscore_variables". Changed  
     171the possible values of the "encoding_directive" compiler option (see manual). 
     172Older config files are not compatible with this new Logtalk version.