refactor: Changed too-generic symbol names in calcomp.h
perf: Minor optimization
perf: Added shortcut to avoid extra call in eargument(), which was bottleneck
fix: Made error non-fatal in case optimization done twice
fix: Potential bug in free allocated EPNODE arrays
perf: Minor optimization
style: Fixed spacing and missing "static" keyword
perf: Flatten hierarchies for commutative & associative operators, '+' and '*'
perf: Added array index optimization to calcomp routines
perf: Removing some conditionals with binary operations
refactor: eliminated stray uses of (char *) to point to memory
Added reduction for (E4)^1
Removed redundant include files
Slight efficiency improvement in eval()
Minor optimizations in oft-called argument() function
Fixed various compiler warnings (mostly harmless)
Reduce (expr)/const to (expr)*(1/const)
Added reduction of constant expressions (0*x), (x*0), (0/x), (1^x), (0^x), (x^0)
Added ability to specify constant name in rtcontrib -bn option
Math library and warning fixes for Solaris
Changed from IEEE macro to checking for isnan macro
Added "eofc" global for specifying an optional EOF character, such as '}'
Continued ANSIfication, and other fixes and clarifications.
Reduced compile warnings, and other compatibility fixes.
Added prototype for eoper[] dispatch array
Added grouping parens to reduce ambiguity warnings.
Eliminated copystruct() macro, which is unnecessary in ANSI. Reduced ambiguity warnings for nested if/if/else clauses.
Added prototypes and includes from patch by Randolph Fritz. Added more required includes and reduced other compile warnings.
Reduced compile problems on Windows.
Various small changes to reduce compile warnings/errors on Windows.
Turned off E_REDEFW by default
Made errno checking explicit after math calls to avoid spurious warnings
Replaced inline copyright notice with #include "copyright.h"
Changes and check-in for 3.5 release Includes new source files and modifications not recorded for many years See ray/doc/notes/ReleaseNotes for notes between 3.1 and 3.5 release
added more careful typing of numbers
made redefinition warnings more intelligent -- won't report new definitions that are equivalent to old
added conditional declaration of atof()
removed conflicting gets() and puts() declarations
Removed unnecessary declaration of atof()
portability improvements
minor change to epfree()
fixed bug for free() routines that touch contents
Changes for 32-bit PC port
Removed problematic math function declarations
minor change to syntax error reporting
Changes for PC port
removed a couple of unnecessary code segments
changed library links to be reliable to avoid strcmp() call
simplified and improved logic for testing of constant functions
added conditional compilation of atof() declarations
updated revision number for release 2.0
eliminated possibility of generating -(-E5) parse tree
fixed code for long identifiers
added bug associated with context naming and function arguments
added getscanpos() function
added contexts to definition naming
added isconstfun() to find constant functions passed as arguments
changed setfunc() call to include assignment type
added ':' definitions for constant expressions
changed exponentiation to right-associative
changed appearance of syntax error reports once more
added line numbers to error reports
nit-picking for Stardent compiler
Deleted paranoid test that will never happen in syntax()
Minor modification of UMINUS compilation
Fixed conditional compile error in epfree()
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.