# Fix: Correctly close active output buffer.
Use ob_get_clean(), not ob_get_contents() and ob_clean().
Tests were failing with:
FunctionsLibTest::testVerifCond with data set "Test that verifConf("0") returns false" ('0', false)
Test code or tested code did not (only) close its own output buffers
OK, but incomplete, skipped, or risky tests\!
Also refactored a test case to use a data provider which helped identify that it was related
to dol_eval.
* Qual: Improve typing hint for (ext)Object, and allow null
# Qual: Improve typing hint for object, and allow null
As the key "->element" is expected, the object type should be derived from CommonObject.
Also extObject can be nullable
* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()
* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()
* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()
* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()
* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()
* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()
* Fix: Use null instead of 0 for extObject in call to Form::editfieldval()
# Qual: PhanCompatibleNegativeStringOffset must be suppressed
Apparently the PhanCompatibleNegativeStringOffset notice can not be avoided
through the '>=1' condition hint, so suppress it explicitly
* Verifcation of variables
Modification of the variable setting before its use.
* To check if the property exists
* Modification as per @frederic34 suggestion
* Update propal.class.php
* Application of coding rules
Modification of the called function.
* Verification of variables
* Verification of variable
* Typo error
* Update actions_sendmails.inc.php
---------
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
* Qual: Ignore some false positives for deprecated functions
# Qual: Ignore some false positives for deprecated functions
The Phan Deprecation Plugin for internal functions has mixed up some
mail functions and lists them as deprecated, this ignores that
* Qual: Enable detection and fixing of internal deprecations
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Replace 'join' with 'implode'
* Qual: Update codespell lines ignore list after format
# Qual: Update codespell lines ignore list after forma
Done using latest library, so also adds some exceptions that are needed
in the future;
---------
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: $form argument to price() must be int
# Fix: $form argument to price() must be int
Changed '' for $form into 0
* Fix: PHPDoc annotations in unappropriate comment
# Fix: PHPDoc annotations in unappropriate comment
PHPDoc annotations need to be in /** */ or // comments.
Fixed that (change type, move comment, add suppress directive)
* Fix: PHPDoc annotations in unappropriate comment
# Fix: PHPDoc annotations in unappropriate comment
PHPDoc annotations need to be in /** */ or // comments.
Fixed that (change type, move comment, add suppress directive)
* Fix: PHPDoc annotations in unappropriate comment
# Fix: PHPDoc annotations in unappropriate comment
PHPDoc annotations need to be in /** */ or // comments.
Fixed that (change type, move comment, add suppress directive)
* Fix: PHPDoc annotations in unappropriate comment
# Fix: PHPDoc annotations in unappropriate comment
PHPDoc annotations need to be in /** */ or // comments.
Fixed that (change type, move comment, add suppress directive)
* Update dolreceiptprinter.class.php
---------
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
PHPDoc update to reflect what the code does today.
This update however doesn't solve this PHPStan warning:
htdocs/core/db/mysqli.class.php 243 Return type (mysqli|null) of method DoliDBMysqli::connect() should be compatible with return type (resource) of method Database::connect()
* NEW - See the documents of my subordinates
* cop
* Rewriting
* up
* ok
* FIX - Restriction on sale representative
---------
Co-authored-by: Anthony Berton <anthony.berton@bb2a.fr>
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
When using multiple languages Dolibarr sometimes switches languages depending on settings. By not loading the "main" file, the proper date formats will not be used and this leads to inconsistency.
6 entries for:
TypeError PhanTypeMismatchArgumentProbablyReal Argument 5 ($objcon) is null of type null but \show_actions_messaging() takes \Contact|string (no real type) defined at htdocs/core/lib/functions.lib.php:13081
htdocs/compta/paiement/class/paiement.class.php 115 PHPDoc type array of property Paiement::$multicurrency_tx is not covariant with PHPDoc type array|float of overridden property CommonObject::$multicurrency_tx.
htdocs/compta/paiement/class/paiement.class.php 120 PHPDoc type array of property Paiement::$multicurrency_code is not covariant with PHPDoc type array|string of overridden property CommonObject::$multicurrency_code.
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
* Qual: Ignore suspicious param positions
# Qual: Ignore suspicious param positions
Add annotations to ignore false positives about suspicious parameter positions.
The cases that require more analysis or may be actual bad parameters positions
are not ignored
the modulebuilder template (so first param is now always $user), except
the delete for thirdparty (still accept the id of thirdparty to delete
as first parameter). Will probably be modified into another version.
* qual: phan for functions.lib.php
54 entries for:
TypeError PhanTypeMismatchArgumentProbablyReal Argument 3 ($exclude) is null of type null but \getCommonSubstitutionArray() takes array (no real type) defined at htdocs/core/lib/functions.lib.php:8285
* phpcs
29 entries for:
Argument 3 ($entity) is null of type null but \ajax_constantonoff() takes int (no real type) defined at htdocs/core/lib/ajax.lib.php:645
68 entries for "Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299"
Examples (first 10):
htdocs/accountancy/admin/categories.php 155 TypeError PhanTypeMismatchArgumentProbablyReal Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299 (the inferred real argument type has nothing in common with the parameter's phpdoc type)
htdocs/accountancy/admin/categories.php 189 TypeError PhanTypeMismatchArgumentProbablyReal Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299 (the inferred real argument type has nothing in common with the parameter's phpdoc type)
htdocs/accountancy/bookkeeping/card.php 778 TypeError PhanTypeMismatchArgumentProbablyReal Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299 (the inferred real argument type has nothing in common with the parameter's phpdoc type)
htdocs/admin/eventorganization.php 341 TypeError PhanTypeMismatchArgumentProbablyReal Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299 (the inferred real argument type has nothing in common with the parameter's phpdoc type)
htdocs/admin/hrm.php 596 TypeError PhanTypeMismatchArgumentProbablyReal Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299 (the inferred real argument type has nothing in common with the parameter's phpdoc type)
htdocs/admin/hrm.php 603 TypeError PhanTypeMismatchArgumentProbablyReal Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299 (the inferred real argument type has nothing in common with the parameter's phpdoc type)
htdocs/admin/hrm.php 627 TypeError PhanTypeMismatchArgumentProbablyReal Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299 (the inferred real argument type has nothing in common with the parameter's phpdoc type)
htdocs/admin/knowledgemanagement.php 293 TypeError PhanTypeMismatchArgumentProbablyReal Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299 (the inferred real argument type has nothing in common with the parameter's phpdoc type)
htdocs/admin/knowledgemanagement.php 300 TypeError PhanTypeMismatchArgumentProbablyReal Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299 (the inferred real argument type has nothing in common with the parameter's phpdoc type)
htdocs/admin/multicurrency.php 115 TypeError PhanTypeMismatchArgumentProbablyReal Argument 1 ($mesg) is null of type null but \setEventMessages() takes string (no real type) defined at htdocs/core/lib/functions.lib.php:9299 (the inferred real argument type has nothing in common with the parameter's phpdoc type)