summaryrefslogtreecommitdiff
path: root/formula
diff options
context:
space:
mode:
Diffstat (limited to 'formula')
-rw-r--r--formula/source/core/api/token.cxx21
1 files changed, 21 insertions, 0 deletions
diff --git a/formula/source/core/api/token.cxx b/formula/source/core/api/token.cxx
index 3cb3eb10f1eb..ae9848778622 100644
--- a/formula/source/core/api/token.cxx
+++ b/formula/source/core/api/token.cxx
@@ -900,6 +900,8 @@ inline bool MissingConvention::isRewriteNeeded( OpCode eOp ) const
case ocGammaDist:
case ocPoissonDist:
case ocAddress:
+ case ocLogNormDist:
+ case ocNormDist:
return true;
case ocMissing:
case ocLog:
@@ -943,6 +945,25 @@ void FormulaMissingContext::AddMoreArgs( FormulaTokenArray *pNewArr, const Missi
pNewArr->AddDouble( 1.0 ); // 3rd, Cumulative=TRUE()
}
break;
+ case ocNormDist:
+ if ( mnCurArg == 2 )
+ {
+ pNewArr->AddOpCode( ocSep );
+ pNewArr->AddDouble( 1.0 ); // 4th, Cumulative=TRUE()
+ }
+ break;
+ case ocLogNormDist:
+ if ( mnCurArg == 0 )
+ {
+ pNewArr->AddOpCode( ocSep );
+ pNewArr->AddDouble( 0.0 ); // 2nd, mean = 0.0
+ }
+ if ( mnCurArg <= 1 )
+ {
+ pNewArr->AddOpCode( ocSep );
+ pNewArr->AddDouble( 1.0 ); // 3rd, standard deviation = 1.0
+ }
+ break;
case ocLog:
if ( !rConv.isODFF() && mnCurArg == 0 )
{