The R Project SVN R

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
43096 6870 d 1 h urbaneks /branches/R-ObjC/ experimental branch of R where all R objects are also ObjC objects  
42307 6942 d 12 h ripley /trunk/src/ change reference to GPL  
42045 6972 d 10 h ripley /trunk/src/main/ use MBCS-aware strchr  
42001 6977 d 7 h ripley /trunk/src/main/ reinstate support of %*s,  
41978 6980 d 8 h ripley /trunk/ remove buffer limits on sprintf()  
41784 6995 d 12 h ripley /trunk/src/ more 'const char *'  
41686 7005 d 8 h ripley /trunk/ more improvements to warning/error messages  
40705 7104 d 14 h ripley /trunk/ bugfix in duplicate on CHARSXPs
more use of translateChar
 
39866 7196 d 7 h duncan /trunk/src/ The following are half the files changed to compile R with C++.
These are the simple, safe changes that keep the stricter compiler happy.

Change variable new to _new, class to klass, this to This or _this, template to Template, not to Not.
Remove some duplicate routine declarations.
Modernize some K&R routine parameter definitions.
Make explicit the signature for some routine pointer types.
Declare mode in creating connection as a const char * const.
Correct some routine declarations.
Add a throw to some routine definitions if in C++ to match built-in definitions.
Made the Clinkage explicit for rwarnc, rexitc. Use enum labels/constants where necessary.

The goals of using g++ are
a) to use a stricter compiler to discover anomolies in our code,
b) be able to use g++ -fdump-translation-unit so that we can more readily
do code analysis on the routines, variables, expressions and at the very
least allow me to identify the use of global variables automatically
and propose refactoring strategies,
c) to explore the pros and cons of using an Object Oriented programming
language C++ as the base language to get extensibility at the system level
and take advantage of some higher-level language features such as exceptions.
 
38417 7336 d 9 h ripley /trunk/src/main/ update copyright date  
37903 7400 d 14 h ripley /trunk/src/ remove Win32-specific code which has been superseded by trio  
37901 7401 d 0 h ripley /trunk/src/ add trio replacement for Windows' flaky *printf  
36990 7508 d 0 h ripley /trunk/ reduce the number of visible symbols in libR.so from 1806 to 1136  
36948 7511 d 11 h ripley /trunk/src/ simplify the handling of star_arg in sprintf()
workaround non-C99 behaviour of Windows' sprintf.
 
36820 7524 d 4 h ripley /trunk/ update FSF address  
35703 7606 d 14 h ripley /trunk/src/main/ suppress -Wall warning  
35625 7615 d 5 h urbaneks /trunk/ Add support for asterisk as with or precision specification (but not
both) in sprintf. Added % to termination characters in order to be more
consistent with system sprintf when handling "%..%" sequences.
 
33548 7810 d 14 h ripley /trunk/src/ dp a bit more coercion in sprintf  
33460 7816 d 22 h ripley /trunk/src/ during no-segfault, grid was passing sprintf a corrupt object, so add some defences  
33436 7817 d 12 h ripley /trunk/src/ add as.character call for %s  

Show All