[Vm-dev] VM Maker: VMMaker.oscog-eem.843.mcz
commits at source.squeak.org
commits at source.squeak.org
Tue Aug 5 17:00:56 UTC 2014
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.843.mcz
==================== Summary ====================
Name: VMMaker.oscog-eem.843
Author: eem
Time: 5 August 2014, 9:55:00.224 am
UUID: 5b054eac-e59e-46bd-a440-cc5ce9f9622b
Ancestors: VMMaker.oscog-eem.842
Allow warnings to be treated as errors.
=============== Diff against VMMaker.oscog-eem.842 ===============
Item was changed:
----- Method: StackInterpreter class>>preambleCCode (in category 'translation') -----
preambleCCode
^
'/* Disable Intel compiler inlining of warning which is used for breakpoints */
#pragma auto_inline off
+ sqInt warnpid, erroronwarn;
- sqInt warnpid;
void
+ warning(char *s) { /* Print an error message but don''t necessarily exit. */
+ if (erroronwarn) error(s);
- warning(char *s) { /* Print an error message but don''t exit. */
if (warnpid)
printf("\n%s pid %ld\n", s, (long)warnpid);
else
printf("\n%s\n", s);
}
void
warningat(char *s, int l) { /* ditto with line number. */
/* use alloca to call warning so one does not have to remember to set two breakpoints... */
char *sl = alloca(strlen(s) + 16);
sprintf(sl, "%s %d", s, l);
warning(sl);
}
#pragma auto_inline on
void
invalidCompactClassError(char *s) { /* Print a (compact) class index error message and exit. */
#if SPURVM
printf("\nClass %s does not have the required class index\n", s);
#else
printf("\nClass %s does not have the required compact class index\n", s);
#endif
exit(-1);
}
/*
* Define sigsetjmp and siglongjmp to be the most minimal setjmp/longjmp available on the platform.
*/
#if WIN32
# define sigsetjmp(jb,ssmf) setjmp(jb)
# define siglongjmp(jb,v) longjmp(jb,v)
#else
# define sigsetjmp(jb,ssmf) _setjmp(jb)
# define siglongjmp(jb,v) _longjmp(jb,v)
#endif
'!
More information about the Vm-dev
mailing list