Hi David,<div><br></div><div> one thing you can do is make that large brace expression a set of literal arrays. e.g.<br><br></div><div><div><span class="Apple-tab-span" style="white-space:pre">        </span>installSS := Installer ss.</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>installSqueak := Installer squeak.</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>"Use the following array of arrays to reduce total number of literals</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>is this script, allows log message for each package load."</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>{</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'Speech' .<span class="Apple-tab-span" style="white-space:pre">                        </span>'SharedPool-Speech' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSqueak .<span class="Apple-tab-span" style="white-space:pre">        </span>'FFI' .<span class="Apple-tab-span" style="white-space:pre">                                </span>'FFI-Pools' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'Alien' .<span class="Apple-tab-span" style="white-space:pre">                        </span>'Alien' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSqueak .<span class="Apple-tab-span" style="white-space:pre">        </span>'VMMaker' .<span class="Apple-tab-span" style="white-space:pre">                        </span>'Balloon-Engine-Pools' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSqueak .<span class="Apple-tab-span" style="white-space:pre">        </span>'VMMaker' .<span class="Apple-tab-span" style="white-space:pre">                        </span>vmmBranch } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSqueak .<span class="Apple-tab-span" style="white-space:pre">        </span>'VMMaker' .<span class="Apple-tab-span" style="white-space:pre">                        </span>'Cog' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'Alien' .<span class="Apple-tab-span" style="white-space:pre">                        </span>'Alien-VMMaker-Plugins' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'OSProcessPlugin' .<span class="Apple-tab-span" style="white-space:pre">        </span>osppBranch } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'AioPlugin' .<span class="Apple-tab-span" style="white-space:pre">                </span>'VMConstruction-Plugins-AioPlugin' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'XDCP' .<span class="Apple-tab-span" style="white-space:pre">                        </span>'VMConstruction-Plugins-XDisplayControlPlugin' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'Balloon3D' .<span class="Apple-tab-span" style="white-space:pre">                </span>'Balloon3D-Constants' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'Balloon3D' .<span class="Apple-tab-span" style="white-space:pre">                </span>'Balloon3D-Plugins' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'FreeTypePlus' .<span class="Apple-tab-span" style="white-space:pre">        </span>'FreeType' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'FreetypePlugin' .<span class="Apple-tab-span" style="white-space:pre">        </span>'Freetype-Plugin' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'dbus' .<span class="Apple-tab-span" style="white-space:pre">                        </span>'DBus-Plugin' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'Rome' .<span class="Apple-tab-span" style="white-space:pre">                        </span>'Rome-Base' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'Rome' .<span class="Apple-tab-span" style="white-space:pre">                        </span>'Rome-PluginCanvas' } .</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{ installSS .<span class="Apple-tab-span" style="white-space:pre">                </span>'Rome' .<span class="Apple-tab-span" style="white-space:pre">                        </span>'Rome-Plugin' }</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>} do: [ :package |</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>log value: 'install ', package third.</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>(package first project: package second) install: package third.</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>].</div><div><br></div><div>=></div><div><div><span class="Apple-tab-span" style="white-space:pre">        </span>"Use the following array of arrays to reduce total number of literals</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>is this script, allows log message for each package load."</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>#(</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'Speech'<span class="Apple-tab-span" style="white-space:pre">                        </span>'SharedPool-Speech' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( squeak<span class="Apple-tab-span" style="white-space:pre">        </span>'FFI'<span class="Apple-tab-span" style="white-space:pre">                                </span>'FFI-Pools' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'Alien'<span class="Apple-tab-span" style="white-space:pre">                        </span>'Alien' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( squeak<span class="Apple-tab-span" style="white-space:pre">        </span>'VMMaker'<span class="Apple-tab-span" style="white-space:pre">                        </span>'Balloon-Engine-Pools' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( squeak<span class="Apple-tab-span" style="white-space:pre">        </span>'VMMaker'<span class="Apple-tab-span" style="white-space:pre">                        </span>vmmBranch )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( squeak<span class="Apple-tab-span" style="white-space:pre">        </span>'VMMaker'<span class="Apple-tab-span" style="white-space:pre">                        </span>'Cog' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'Alien'<span class="Apple-tab-span" style="white-space:pre">                        </span>'Alien-VMMaker-Plugins' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'OSProcessPlugin'<span class="Apple-tab-span" style="white-space:pre">        </span>osppBranch )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'AioPlugin'<span class="Apple-tab-span" style="white-space:pre">                </span>'VMConstruction-Plugins-AioPlugin' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'XDCP'<span class="Apple-tab-span" style="white-space:pre">                        </span>'VMConstruction-Plugins-XDisplayControlPlugin' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'Balloon3D'<span class="Apple-tab-span" style="white-space:pre">                </span>'Balloon3D-Constants' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'Balloon3D'<span class="Apple-tab-span" style="white-space:pre">                </span>'Balloon3D-Plugins' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'FreeTypePlus'<span class="Apple-tab-span" style="white-space:pre">        </span>'FreeType' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'FreetypePlugin'<span class="Apple-tab-span" style="white-space:pre">        </span>'Freetype-Plugin' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'dbus'<span class="Apple-tab-span" style="white-space:pre">                        </span>'DBus-Plugin' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'Rome'<span class="Apple-tab-span" style="white-space:pre">                        </span>'Rome-Base' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'Rome'<span class="Apple-tab-span" style="white-space:pre">                        </span>'Rome-PluginCanvas' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>#( ss<span class="Apple-tab-span" style="white-space:pre">                </span>'Rome'<span class="Apple-tab-span" style="white-space:pre">                        </span>'Rome-Plugin' )</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>) do: [ :package |</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>log value: 'install ', package third.</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>((Installer perform: package first) project: package second) install: package third.</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>].</div></div><div><br></div><div class="gmail_quote">On Wed, Mar 13, 2013 at 4:48 PM, David T. Lewis <span dir="ltr"><<a href="mailto:lewis@mail.msen.com" target="_blank">lewis@mail.msen.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Something changed in trunk a couple of days ago that results in a 'More than<br>
256 literals referenced' error in a filein script that previously did not<br>
display this problem (see attached). It does not seem to be anything in the<br>
Compiler package (I reverted back a half dozen versions, no change), so I'm<br>
looking at the CI builds for reference. The problem appears in the image from<br>
SqueakTrunk build #213 and later, and is not present in the image from<br>
build #212 and earlier.<br>
<br>
I spotted the problem in the CogVM build job, which has been failing for a<br>
couple of days. The failures are due to the above issue, and the script file<br>
that fails on filein is <a href="http://build.squeak.org/job/CogVM/ws/VMCogUnixBuild.st" target="_blank">http://build.squeak.org/job/CogVM/ws/VMCogUnixBuild.st</a><br>
The problem showed up in the CogVM job by coincidence and is not related to<br>
the VM.<br>
<br>
Filing this VMCogUnixBuild.st into an updated trunk image will reproduce<br>
the problem.<br>
<br>
Dave<br></blockquote><div><br></div><div><br></div><div>However, I have an instruction set that lifts the 256 literal limit to 65535 ;) </div></div><br>-- <br>best,<div>Eliot</div>
</div>