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
41687 7006 d 8 h ripley /trunk/src/main/ patch from Seth Falcon to r41495  
41686 7006 d 9 h ripley /trunk/ more improvements to warning/error messages  
41631 7010 d 16 h ripley /trunk/src/ work on inlining
- allow C99 model
- use static inlining in units where function is used a lot
export isS4, asS4 (don't use them internally, rather macros)
work around an optimization bug in currnt gcc pre-4.3.0
 
41495 7021 d 1 h rgentlem /trunk/src/ a large number of changes to alter the behavior of CHARSXPs so that
they are unique and hashed. This will have some effect on run time, but
for any application which uses a lot of names (like big arrays with
row or column names) the savings are often impressive
 
41229 7041 d 6 h ripley /trunk/src/main/ fix buffer overflow  
40705 7105 d 14 h ripley /trunk/ bugfix in duplicate on CHARSXPs
more use of translateChar
 
40704 7106 d 10 h ripley /trunk/src/main/ more on marked character strings  
39866 7197 d 8 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.
 
36990 7509 d 0 h ripley /trunk/ reduce the number of visible symbols in libR.so from 1806 to 1136  
36820 7525 d 5 h ripley /trunk/ update FSF address  
35903 7591 d 4 h ripley /trunk/ more on C stack checking  
35590 7620 d 14 h ripley /trunk/ format was dropping dims (and dimnames) on 0-diml matrices  
35414 7642 d 0 h ripley /trunk/src/main/ -Wall  
35371 7644 d 8 h ripley /trunk/ add S-like 'scientific' argument to format.default  
35290 7652 d 9 h ripley /trunk/src/ some tidying up
format.data.frame now returns character cols as AsIs rather than factor.
 
35284 7653 d 6 h ripley /trunk/ add na.encode arg to format.default, make true by default.  
35281 7653 d 9 h ripley /trunk/ Fixes to format.info.
Enhancements to match format.default.
Document what happens with trailing zeroes more carefully.
 
35263 7655 d 2 h ripley /trunk/ enhancements and bug fix to format.default  
35262 7655 d 13 h ripley /trunk/ consistency and documentation corrections for format and format.char.  
34294 7748 d 4 h ripley /trunk/ add experimental options("OutDec")  

Show All